Reputation: 2349
We offer an auto-renewable in-app purchase subscription in our iOS app. We want to add a free trial period to our subscription now, which already works fine. In our app's "store view", we display the product info along with a button "Test now for free".
However, if a user subscribes, enjoys a nice free month, (maybe pays for some more) and then cancels, she will be able to see our "store view" again. Now Apple makes sure that the same App Store user does not get a free trial again, which is a good thing. But that's why we also don't want to ask the user to "Test now for free", but rather "Subscribe now" in this case.
So my question is: Is there are way to tell (before the user actually purchases), if he is still eligible for a free trial?
We could just check in our own user DB if a user already subscribed before, but when she registers again with our app, she will still see "Test now for free", but would not be able to, because of her App Store account that already used up the free trial period.
Upvotes: 7
Views: 3518
Reputation: 2433
Two options to change the string you are displaying in the store view.
1) Server call to check if they have subscribed before. You say you already have this value so you could add it to your user schema if flexible i.e. hasSubscribed
then you'll have it on the user object in the client and can do a check to see whether to display "test" or "subscribe" or just pull it across at launch and store it in memory for when you display the store view.
2) If you have the receipt on the client then check to see if that particular subscription has been purchased before.
Upvotes: 1