我想在我的iOS应用程序中提供可续订的订阅。用户订阅并存储收据。现在我想知道如何确保收据有效而不是取消:
如果用户取消订阅并且未续订,我怎么知道呢?如果续订订阅,将创建新收据?
如果用户通过苹果支持取消订阅(例如,因为他买了我的错误),我怎么知道呢?设备上的收据有效。我应该在每次用户登录时刷新收据吗?
编辑: 我忘了提及它,但收据在客户端检查。
答案 0 :(得分:0)
通常,您需要检查订阅的到期日期。为此,您需要获取收据清单并找到最新记录。可以使用多种方式(iOS Restore in App purchases with receipts)
完成如果用户取消订阅,我认为这意味着收据清单只会更新,您可以通过阅读“取消日期”字段找到。要跟踪我建议使用UILocalNotification的到期日期。如果用户继续使用订阅并且您怀疑是否延长了订阅,则应更新收据列表并向Apple发送请求[[SKPaymentQueue defaultQueue] restoreCompletedTransactions]
如果用户通过Apple支持取消订阅,您可以在收据数据中找到相应的记录(也称为“取消日期”)。请阅读(https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ReceiptFields.html)。 我建议不时检查收据或使用通知机制。