Preventing Erasure of User Data While Upgrading iOS Application via Itunes

update iphone application behaviour

AFAIK the documents directory is left in-tact on an update. If you stored the database in the documents directory then you should be okay. If it's in the app's bundle, I don't think there is much you can do save it.

iPhone Application Version Upgrade will remove file stored in iphone memory?

When users update application only the application bundle changes and other folders in application sandbox should remain intact.So if you store your data in Documents folder then it will persist after application update.

Edit: See Files Saved During Application Updates section in "Application Development Guide"

IOS: Data persistence between versions of the app

When you release an update to your iOS app and the user installs it, the system does not wipe out any data from within the app.

This means that data in a given user's Documents directory, NSUserDefaults, as well as the keychain will persist between app updates.

A couple of important notes, however:

  1. The Caches directory of an app is never reliably persisted, so if you want to make sure data stays safe, don't put it in this directory
  2. Items in the keychain seem to persist even if you completely erase the app and re-install it. I've noticed this in the past, so it may be a good thing to keep in mind

In short, if you want data cleaned out of your app on each update (not sure why you would), you'll have to do so manually.

What happens to iOS subscriptions when the server / backend account is deleted?

Question 1: The iOS Subscription is not linked to the iOS app but the users Apple ID account. Deleting just the iOS app does not has any effect on the subscription at all. At the end of the subscription period the subscription would sill be auto-renewed and our server. Our server does not need an installed iOS to recognize the renewal (e.g. using Status Update Notifications or by polling the /verifyReceipt endpoint). Thus the user could still continue to access the payed content even if he does not use/install the iOS App any more. Is this correct?

Ans: Yeah You are right. When you had send receipt to server first time, then receipt will be verify with apple by verifyReceipt, after that your server validate this receipt time to time.

Question 2: But what happens if the users decides to delete his user account on our webpage and forgets to cancel the iOS subscription?

Ans: If user has deleted his user account on webpage then user account will be auto-renew at the end of each subscription period. There is only the way to manage i.e. if a user request for refund after deleting the account, then you can check form server(for deleting his account) and refund his money.

Question 3: In assume the subscription would simple do the same as before and would auto-renew at the end of each subscription period. Since the user account on our server has been deleted the server does not recognise the renewal any more and the user simply pays for nothing. Is this correct?

Ans: No this is not correct. Subscription will only be managed by Apple , not your server. Only your server can hit the request for verify subscription status time to time nothing than else.

Question 4: Or is there any way the server can notify Apple to cancel the subscription?

Ans: No, there is no way. Because of apple security. Server has not any authority to do anything in users account(Apple account). That is the reason apple will never approve your app with auto renew if you will not clearly see the below information to user before his purchasing(Subscription). Please refer attached screenshot.

Sample Image

iOS5 data storage issue. Where to save files?

Apple has fixed this issue in iOS 5.01 beta.

See my blog post here:

http://www.gaiagps.com/news/article/Apple%20Fixes%20Issue%20that%20Affected%20Offline%20Mapping%20Apps%20in%20iOS%205.0



Related Topics



Leave a reply



Submit