IOS – I have a paid app on appstore, is it possible to offer the users who bought it a different app, and pull this one from appstore

app-store-connectiosios-appstore

The thing is that there are two versions of the same app… a lite and a pro version. The lite version is free but offers an in-app purchase which can unlock all the capabilities of the pro version. We want to change the app to a subscription type app, and pull the pro version from the Appstore, but we would like to offer the users who already bought the pro version an unlimited subscription.
Is there a way to do this?

Best Answer

We did this several years ago. We implemented a system to do it and it's a little complex. This is not code to use, just an overview of generally how we did it. You'll need to refine this for your exact usage.

  • Implement a shared "Group" directory to store some preferences in, or iCloud shared KV storage for both apps (on the same key!)
  • In the Pro app, store something in a user defaults file or iCloud KV, even just a single bool for "is pro"
  • In Free app, also implement reading/writing to the group/iCloud
  • Implement a free in app purchase in the Free app to unlock the Pro migration.
  • In Pro app, set up a dialog to tell users they must download Free app and redeem the free in-app-purchase to upgrade. They must not delete the Pro app until after they d/l and redeem. (Here is where the iCloud shared storage is better, it's available right away to almost all users even if they delete the Pro app first.)
  • When they download and start Free app, check the shared user defaults/iCloud for "isProUser" or whatever you call your key, and then unlock content. Or maybe show them the free IAP on your content purchasing screen (that is hidden for non-Pro users).
  • Deprecate the Pro app in the future. Some users might not update, or they mess it up. Hopefully customer service can help with promo codes.
  • After they update, save a key for "hasUpdated" or something to not show the "upgrade" dialog again if they reinstall; or do but tell them to "restore purchases".

The pro users will have to upgrade 1 more time to get the version that will write their keys to enable the free upgrade.