cocoa touch - Automatic Subscription In-App Purchases: Restoring Subsequent Renewals -


according apple in app purchase programming guide:

the app store creates separate transaction each time renews subscription. when application restores previous purchases, store kit delivers each transaction application.

let's imagine app subscription client-side-only (no server component). simplest way verify subsequent renewals have been billed seems restoring previous purchases every month.

however, pops user's itunes password prompt every time call restorecompletedtransactions seems bad user experience. recourse use server receipt verification code (along new "shared secret")?

the app store calls paymentqueue , posts transaction each time auto-renews. transaction posted transaction.transactionstate==skpaymenttransactionstaterestored.

the issue unfortunately gets posted 1 device. second device not posting. therefore, detect auto-renewal, or rather detect lack of autorenewal , deny device continuing subscription, have restorecompletedtransaction or "http post 64-bit encoded json containing last transaction". if fomer, user needs give password; , point out, that's intrusive. if latter, lots of additional coding required. so, question in answering question is...why doesn't storekit have command:

(does not exist) - [[skpaymentqueue defaultqueue] restoreattachedtransactions:(nsarray *)transactions];

this command flow restorecompletedtransactions restore attached transactions and, importantly, not require log-in user. has same security protection "http post 64-bit encoded json containing last transaction" , allows entire in app purchase process done in storekit rather requiring web posting code.

if makes sense you, please suggest how apple....thanks.


Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -