Apple IAP Subscription Update Detection (iOS7 + Receipts)

First of all, this question relates to iOS7 + receipts, therefore all questions / answers to SO that relate to latest_receiptand latest_receipt_infoare not applicable (since they are outdated and go away). It seems that the bulk of the knowledge base about updating the SO subscription has been going on since 2011 and 2012, so it’s misleading and provides incorrect information for the current specifications.

I know when my user subscription will expire. I want to know if they updated it or not. According to Apple, when their subscription is updated:

After a successful subscription renewal, the Store Kit adds a transaction to resume the transaction queue. Validating your application is a transactional queue at startup and processes the update in the same way as any other transaction. Please note that if your application is already running when the subscription resumes, the transaction observer is not called; Your application will know about the update the next time it is launched.

It all makes sense. So, now the obvious question Apple is not addressing is how to determine if the subscription has been renewed if the user does not close the application and does not restart it (which causes StoreKit to send the application to process the transaction)? If the user stops opening the application for a long period of time, the transaction will not be received, but I can not continue to provide the content because the expiration date has passed. Theoretically, the user can leave the application to work for several months without restarting.

[NSBundle mainBundle].appStoreReceiptURL, ​​, ? ? , StoreKit , ​​ ( )? . , ?

?

+4
1

URL- Apple, JSON 'latest_receipt_info' , Apple ID. , StoreKit. , , , - , , .

SO Apple, , , : fooobar.com/questions/1643396/...

+1

All Articles