Fabric digits doesn't send confirmation code once the phone number has been used - twitter-fabric

if it's a new phone number, everything works fine, however if I repeat the login again with previous phone number, then no confirmation code is sent over even if i change to another phone or even change the app bundle, is anybody else having such problem?
we're trying to integrate the "find friends" feature provided by Twitter Fabric, it seems Fabric Digits is the only solution, is there any other existing service available? thanks!

App developers require debugging their apps and for that repeating sign in process for success/ failure multiple times is mendatory. Fabric Digits by Twitter has done a very good job in providing at least 30-40 sign ins attempts (successful/ failure) for the same number before stopping sending more confirmation codes for that number for that day. Yes, as per my experience, Digits blocks (if at all) for that day only. Next day, you can again start requesting OTPs for the same number.
I know at least 5-6 developers who have successfully implemented Digits into their production app and the above observation held true for all of them.
The good news is you can always write to Digits Support Team which responds very quickly. I hope this information helped you

Related

Who knows what method uses Mail.ru to download emails instantly

Im working in an android email app using java and I download emails connecting with imap. I noticed my app takes a while to download emails in all providers, I tried some apps in the play store to find out if it was just me, but no, a lot of apps download emails same way I do, it takes a while. Until I found an interesting app, Mail.ru ( https://play.google.com/store/apps/details?id=ru.mail.mailapp&hl=en ). This app download emails instantly, like hell!, there is no way they can download emails that fast, I tried a few email providers, Gmail, Outlook, Yahoo, AOL, Mail.com, Yandex, I even tried my own email domain and with all of them is the same, they download all emails instantly, you don't even notice.
I don't know, I wanted to ask because maybe someone have any idea what method they use to download that fast, I would really appreciate any tip, recomendation to improve the download speed of my app with all providers. Best Regards
There are three ways: They can start earlier, finish later or download less. Starting earlier means to issue the IMAP command before the user does, for example by noticing that the user always reads mail in the morning and so downloading everything in the background at six. Finishing later means to display something as soon as you have a first message ready, and continuing the download in the background. By the time the user is done with the first five messages you'll have had time to download at least fifty. Downloading less is to download only part of the message, as Max suggests, and complementing it later if necessary.

Store Kit in-app purchases notification slow

I have followed an example tutorial online for integrating in-app purchases in to my app. It is all working fine purchasing and unlocking the extra content. However, the notification that gets posted for confirming the purchase can take from 4-9 seconds to appear. This does not make for a very consistent user experience and makes the app appear slow.
Has anyone else had the same problem as this or know of a fix for it?
The long length of time and inconsistency is probably originating from the following:
When the user makes a purchase network messages will be sent to apples server - the length of time this will take will be inconsistent depending on the distance from the server, the amount of nodes the message passes through and the quality of the connections you are using.
When the message reaches apples server it will need to be processed and a response generated - the length of this time will be inconsistent depending on the load currently affecting the server.
A confirmation then will be transmitted back over the network - same rules apply as for the outgoing message.
The device upon receiving the confirmation will display the alert to the user.
Unless you are able to make changes to the network which the message travels upon or can improve apples servers response times you will not be able to reduce the time or inconsistency.
A "solution" would be to display an activity indicator with a helpful message to the user explaining what is happening, if you plan on doing this recommend the following utility DSActivityView. Its easy to use and quick to hook up and has been useful for me when faced with similar problems.

iphone sdk system time vs user time

I have an app that requires me to take an action after some period of time. For example, if an user hasn't been inside the app in few weeks, when the user eventually starts the app, I have to ask them to put in a special code that was given to them when they installed this app. (this is an in-house app and i am being required to do this due to security concerns)
I am using the [NSDate date] method to retrieve the date when the user logs in and save it into a database. I compare this saved date next time they open up the app and see how long its been since their last login. The problem is that [NSDate date] gives the time that is effected by the time settings that can be changed manually by the user in the native settings app. As you can probably tell, this causes lots of problems to my situation. If the user is suppose to be put the special code after 3 weeks of inactivity, he can cause the app to show this screen by modifying the time in the native settings app or worse, get away from it by setting the time to a previous date that will be within 3 weeks of his activity.
Is there a way to get the "system time" instead of the "user time"? I have looked into mach_absolute_time() but this gets reset after restart of the device. Since the time of inactivity I will be comparing against is pretty large, chances are device would have been restarted by then. I also thought of using network connection to get the time from servers outside the app, but lots of users won't have access to wifi where they use their iPads. That will be my last resort solution if i can't find anything else. Because of their location during usage, I am trying to use everything on the device itself.
Am I overlooking something simple here? this seems too simple of a problem to not have an answer. Please guide me toward the right direction. Thank you in advance.
Why not query a remote server for the time - lots of NTP servers about or just make a simple HTTP request to a php script on your own server. Of course if your app is likely never to be connected to the internet that could be a problem, but once you have a 3rd party time its quite easy to guess if the user has been playing with the clock.
If this is an inhouse app (so you aren't constrained by Apples approval process), you could mark your app as doing some background stuff (voip or receiving location updates), so that the app will always be active and you'd be able to update some sort of an "unused" counter. Voip app will even be restarted by the OS after device reboot.
But of course it'll drain the battery somewhat.
Either: make having the actual time an essential feature of your app. This way the users will have a need to keep the time of the device current and can't go back three weeks
Or: mark the code as expired and save this information before the app informs the user. This will stop most user from setting the time back. Most will try once or twice, see that the app stays disabled and will give up.
You can also save the timestamp of the last successful execution and if that is more than a reasonable time frame in the future (remember summer/winter time) then consider it a "hack attempt". Put a CRC check (or whatever obscure idea you come up with) on that timestamp and save it too and you will stop a large number of script kiddies.
You can never stop the diehard hacker who search actively for every trick you might have put into the app. Just focus on the "average" user.

iPhone SDK : Is it possible to record the you talking time?

First ,this is my friends idea ,girls always use cell phone talk too much
every month they receive the billing will cost them a lot of money
they ask me is there any applications to calculate how long they dial out a month
or maybe can pop up a alert to notice them time is up,please hang up the phone
maybe 3 mins or 5 mins (some telecommunications provider offer free talk at first 3 mins )
So.......is it possible to use application to record your talking time and give you a notice ?
I'm just a new iphone programmer ,I have no idea about this ~
Even if this is impossible , still can share some information to me
It's help me to answer my friend
thanks :)
Using the wireless company's website would be the simplest way. If you really wanted a native iPhone app that would track time you could probably write one that utilized iOS's new multitasking abilities.
Essentially, the 10,000 foot view of the app would be something that a user would launch before making a phone call. When launched, they could start a timer (or delayed timer), move the app to the background (by tapping on the home button on a iDevice that supports background apps). The app's timer would continue to run in the background while the user makes their phone call.
I believe phone calls can be moved to the background as well, so users could go back to the app and check how much time they've been on the phone call.
Complicated, but doesn't require jail breaking. The implementation could be improved a ton, but that's the 1 minute, proof of concept, that you seemed to be looking for.

Limit user participation to a server regulated competition? (iphone sdk)

I am new to programming for the iPhone. I want to allow my users to participate in a competition, to a maximum of n times a day. Is there anyway of going about that programmatically and/or through a server for optimal security (i have done NSUserDefaults). ?
Is it possible to get the database server to check the number of entries made by a device and send a call back to the application if it has exceeded n number of attempts for that day?
thank you for any suggestions.
Sure you can!
Each iPhone/iPod Touch device has a unique identifier you can get from the UIDevice class. When the app launches, bring up a screen that says "authenticating" and send that unique ID to your server in a simple HTTP GET request. On the server, you can log the identifier and a timestamp to a database and see how many times that same identifier has been seen in a 24 hour period. For this, you could use standard MySQL + PHP. The server could send back a simple "Yes" or "No" depending on the competition rules.
You definitely want it to go through a server. People can get around limitations saved in your NSUserDefaults by uninstalling and reinstalling the app. Using a server also has other benefits. It would allow you to modify the competition rules after deploying the application without waiting for a 14-day app update review from Apple.
Ben