我的产品具有不可续订订阅类型,并且我需要恢复用户先前进行的交易的功能。我购买了几种此类产品,并希望将其还原。我使用以下典型代码:
[[SKPaymentQueue defaultQueue] addTransactionObserver:self];
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
但是我得到了
paymentQueueRestoreCompletedTransactionsFinished:
而没有任何恢复的事务。我与测试用户一起使用沙盒环境。
最佳答案
iTunes App Store不会还原非续订的订阅。跟踪用户的订阅状态是您的应用的责任-
从In-App Purchase Programming Guide
非续订订阅与自动续订订阅在一些关键方面有所不同。这些差异使您的应用可以灵活地实施正确的
满足您的需求的行为,如下所示:
您的应用负责计算以下时间段:
订阅处于 Activity 状态,并确定需要制作哪些内容
可供用户使用。您的应用负责检测
订阅即将到期,并提示用户
通过再次购买产品来续订订阅。
您的应用是
负责使订阅在所有用户的
购买后的设备,用于让用户恢复过去
购买。例如,大多数订阅是由服务器提供的。
您的服务器将需要某种机制来识别用户并进行关联
订阅是与购买它们的用户一起购买的。
关于ios - 无法恢复非续订订阅的已完成交易,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29264921/