我有一个订阅SaaS Web应用程序,我现在正在构建一个iOS应用程序。根据Apple的指导原则,我正在为通过iOS应用注册的用户实施IAP订阅功能。
IAP是一种自动续订订阅。
当用户注册并完成IAP时,我是否可以将IAP收据存储在我的网络应用用户数据库中并随时检查以确定用户的自动续订订阅是否仍然有效?这似乎可行,但我不确定收据在用户自动续订订阅的整个生命周期内是否保持不变,或者是否以任何方式过期和更改。
总而言之,这些收据到期还是可以检查以确定用户的订阅在将来是否仍然有效?
答案 0 :(得分:1)
应用程序内购买收据不会过期 - 也就是说,您可以在任何给定时间针对Apple的服务器进行检查以验证订阅。
我找不到任何关于此的文档,但我已经运行了一个应用程序内购买的应用程序超过三年了,我没有任何问题。这也是有道理的:没有理由使收据无效。在某种程度上,它构成了交易历史的一部分。
我能找到的最接近的是https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateRemotely.html处的返回代码 - 观察没有“无效收据”的代码(21003用于在Apple的数据库中找不到收据)。在您的情况下,您要检查21006,因为它告诉您收据有效但订阅已过期。