iOS Developers: How To Preserve User Purchases When Releasing a New App


The latter allows users the freedom to restore and upgrade while preserving their purchased features, but Apple doesn't make it obvious how to accomplish this.

Don’t miss the best of The Mac Observer

Set us as a preferred source and our Apple reporting ranks higher in your Google Search results and Discover feed — one tap, no account changes.

Or get it by email

Our friends at DigiDNA found that employing free in-app purchases solves this problem. Their strategy, in short, is:

  1. Simultaneously release the new app alongside an update to the legacy version.
  2. Have the legacy version write a special flag in the keychain at first launch. These keychain entries can be read by the new app because they're from you, the same developer.
  3. Have the legacy app inform users that the new app exists, and let them know that all currently-owned features will be unlocked for free.
  4. Once installed, the new app reads the special keychain entry and offers those users (and only those users) a free in-app purchase bundle that unlocks all their previously paid-for add-ons (yes, free in-app purchases seem counter-intuitive, but they are allowed, at least currently).

Interested developers can (and should) read the whole blog post to get the nitty gritty on this creative method. Kudos to the folks at DigiDNA for coming up with this solution!

[Some image elements courtesy Shutterstock]

Discussion

Join the discussionCommenting as a guest — your email is never published · Log in

Protected by Akismet — be kind, stay on topic.

This site uses Akismet to reduce spam. Learn how your comment data is processed.