我開始圍繞此問題開展一項活動。這是我的觀察和活動:
自動更新後,App Store調用paymentQueue
併發布事務。交易過帳爲transaction.transactionState==SKPaymentTransactionStateRestored
。
問題是,不幸的是這隻會發布到一個設備。第二個設備沒有獲得發佈。因此,爲了檢測自動更新,或者更確切地說,檢測到缺少自動更新並且拒絕持續訂閱,您必須執行restoreCompletedTransaction
或「http發佈包含最後事務的64位編碼的JSON」。如果前者,用戶需要輸入密碼;這是侵入性的 - 正如你在上面指出的那樣。如果是後者,則需要大量額外的編碼。所以,我的問題是...爲什麼不StoreKit
有一個命令:
(不存在)- [[SKPaymentQueue defaultQueue] restoreAttachedTransactions:(NSArray *)transactions];
此命令將流就像一個restoreCompletedTransactions
,但只會恢復連接交易,而最重要的是,它不需要用戶登錄。它具有與「http發佈包含最後一筆交易的64位編碼JSON」相同的安全保護,它允許在StoreKit
中完成整個In App Purchase流程,而不需要網絡發佈代碼。
如果這對你有意義,請建議如何讓這個給蘋果....謝謝。
此鏈接https://stackoverflow.com/questions/22680059/auto-renewable-subscription-in-ios7/45220204#45220204 可能有幫助您。 –