我正在测试自动续订订阅的恢复过程。测试涉及使用不同沙盒帐户在同一设备上多次购买订阅。
我正在三种设备上进行测试:iPhone、iPad 和 iPod。在 iPad 上我有以下问题:
如果我继续从 NSBundle.mainBundle().appStoreReceiptURL 查询收据,几分钟后,我突然在不同的沙盒 ID 下收到与早先购买相关联的不同收据。这仍然是一个有效的收据,但与当前登录的沙箱用户没有关联。我检查过:登录用户没有改变。
如果我从 iPad 上删除该应用程序并重新安装,他第一次获得正确收据时使用 SKReceiptRefreshRequest 刷新收据,但几分钟后他从之前的沙盒用户那里取回了收据。
有人知道是什么原因造成的吗?奇怪的是,我在 iPod 和 iPhone 上执行了相同的操作,但在那些设备上一切正常。
最佳答案
在沙盒模式下测试之前,如果有任何其他帐户登录,您必须从 AppStore 注销,然后只有您可以在沙盒 ID 中测试应用程序。如果不是应用程序行为不端,您将无法从应用商店获取预期收据。
同时确认应用程序在测试中使用沙箱 url,下面是沙箱模式苹果服务器 url https://sandbox.itunes.apple.com/
在 SandBox 中测试应用内的步骤
1.如果有其他账号登录,请退出应用商店。
2.使用沙箱测试员帐户登录。
关于ios - App Store Receipt 有时会返回意外的收据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37339406/