我的应用内购买项目现在运行良好,但我需要测试购买,一旦购买成功就无法撤消?我如何在应用程序购买中进行测试,并将我的应用程序升级到完整版,只需一次完成?
5 回答
没有一个答案是真正正确的。即使您从测试设备中删除了缓存的购买,该产品也会在 Apple 的服务器中标记为已购买,与您的测试 Apple ID 相关联。所以测试不会完全重现预期的行为。例如,这对于测试恢复产品功能用例非常重要。
据我所知,这个问题的真正答案是:你不能不创建一个新的测试帐户,但这没什么大不了的,你甚至可以使用一个发明的电子邮件地址(无需验证),并且您可以在使用后删除该帐户。
- 从您的设备中删除应用程序
- 在 XCode 的 Product 菜单中运行“Clean”
- 在您的设备上,前往“设置”、“商店”、“Apple ID”,然后退出
- 再次启动您的应用程序,因为您没有登录任何帐户,以前的应用程序内购买将无法识别,您将能够使用相同的测试用户帐户再次购买/下载它
如果您删除您的应用并重新安装它,您可以重新购买产品。它遵循相同的代码流程和几乎完全相同的用户体验(有一个对话框让您知道您可以第二次免费重新购买)。您还可以在 iTunes Connect 中创建更多测试用户,以确保您进行完全干净的测试。
我花了几个星期每天多次删除和重新安装我的应用程序,以确保我的 storekit 实现也能像我想要的那样工作。
您所要做的就是从设备中删除您的应用程序。这将清除您可能存储了应用内购买详细信息的任何 NSUserDefaults。
再次运行您的应用程序后,再进行一次购买,Store Kit 会告诉您:
“您已经购买了。点击确定再次免费下载”
点击 OK 后,您将经历与第一次进行应用内购买时相同的事件序列,因此您可以一次又一次地进行测试。
在您的应用程序上使用错误数据进行单元测试,直到您满意为止。
(创建测试代码 - 对于您使用的每个模块)
我想我需要对您的流程进行更多描述才能获得更好的答案。