我已经在一个示例应用程序中测试了iOS的应用程序购买。我需要弄清楚是否可以在发布时立即调用refreshReceipt
API来检查用户是否符合某些试用期订阅等条件。
我在AppDelegate的application:didFinishLaunching:options
方法中调用了refreshReceipt
,但它要求我提供AppStore凭据,基本上是沙盒用户的密码。我从苹果文档中读到的这种行为是我没想到的。它是因为沙箱环境而发生的,还是在生产环境中也发生了。
此外,Restore Purchase
是否会触发AppStore登录警报。苹果公司的文档说可以,但最近我看到我手机上的一个音乐应用程序在我选择这个选项时没有要求提供凭据。这可能是因为他们没有调用StoreKit的restorePurchase应用程序接口,而是使用自己的机制。
发布于 2019-06-13 03:37:10
只要设备上没有回执,您就会收到登录提示。在沙箱中,没有安装收据,所以你总是会看到弹出窗口。您还应该注意到,在沙箱中刷新收据后,收据仍然不存在,除非您进行了购买。
如果用户登录到其iTunes帐户,则生产环境中应始终存在收据。
对于恢复,我会假设它遵循同样的逻辑(如果没有回执就要求提示),但这与苹果所说的相矛盾。
https://stackoverflow.com/questions/56558018
复制相似问题