2

In iOS, is there a way to figure out the version of app the user originally bought from?

For example, what if i want to implement some special behavior only for user who purchased v1.0. one obvious "feature" is disable in-app purchase so they can enjoy the rest without paying? I thought up some ways to do it but unfortunately, it wont survive the test if the user deleted the app and also i didnt user icloud early enough to persist this metadata.

kawingkelvin
  • 3,649
  • 2
  • 30
  • 50
  • 2
    Do you want to turn an existing feature into an In-App purchase? – Black Frog Mar 08 '13 at 23:26
  • For the same device you could use the keychain which persists data through several installs and of course you would be tracking only versions higher than the one that starts using the keychain. – Moxy Mar 08 '13 at 23:47
  • @Moxy A purchase is generally supposed to work across a user's devices. – tc. Mar 10 '13 at 16:28

1 Answers1

3

Unfortunately this can't be done. At least not in any perfect manner. There is no API to get any details about the user and their purchase. If your 1.0 version of the app doesn't already persist some meaningful clue, your only solutions would be partial at best.

Your issue is made worse if you already have newer versions of the app out (such as 1.1) and you want to add this new feature to a newer version (1.2 or 2.0). There is no way to know if anyone ever had 1.0.

You basically have two options:

  1. Leave it alone. You can't convert a paid app to a free-with-IAP app without hurting at least some portion of your existing customers. If anything, leave the app paid but add IAP for any new functionality. This way, everyone pays the same for the base app and everyone has the option to pay more, through IAP, for additional features.
  2. Depending on your ethics and the number of existing customers, you could just make the switch and make existing customers pay again for functionality they already paid for. Obviously, this is a bad idea but it is an option.
rmaddy
  • 314,917
  • 42
  • 532
  • 579
  • 3. Make the free-plus-IAP app a different app. I see this happen a lot, but I suspect it's a maintenance/support nightmare. – tc. Mar 10 '13 at 16:29
  • i have an additional requirement, that the diff app should be able to one and the same in terms of Game Center, and also p2p play. So i really like to have just 1 app with same app id. – kawingkelvin Mar 11 '13 at 19:02