应用内购买沙盒之谜:手机处于无法启动购买状态

Posted

技术标签:

【中文标题】应用内购买沙盒之谜:手机处于无法启动购买状态【英文标题】:in-app purchase sandbox mystery: phone left in state unable to initiate purchase 【发布时间】:2011-07-15 05:31:40 【问题描述】:

我对我的 ios 游戏进行了临时部署,其中包括应用内购买。它在 iTunes 上正确设置了可购买的项目,并且我在 iTunes 上测试了用户。我可以用我自己的 iPod 和朋友的 iPod 成功测试它——我可以选择要购买的商品,从 Apple 服务器正确获取价格信息,选择购买,输入其中一个的 Apple ID 和密码测试用户,购买成功。

另一位朋友也在他的 iPhone 上安装了游戏并开始查看应用内购买,但他遵循了错误的程序,现在我们根本无法在他的 iPhone 上使用应用内购买。

具体来说,他通过设置应用程序正确地退出了商店,然后运行游戏并选择要购买的物品。它正确检索了价格信息。然而,当标准 UI 弹出并且他应该点击“使用现有的 Apple ID”时,他错误地选择了“创建新的 Apple ID”。这使他退出了游戏(游戏被发送到后台)并进入网页为新用户填写详细信息。他意识到这是错误的,并回到了比赛中。但是当他尝试重复他的过程时,在检索价格信息(再次成功)之后,当他开始购买时,它出错了,并且永远不会显示标准 UI,他可以在其中选择现有的 Apple ID 或创建新的。所以就好像他的手机处于一个有趣的状态。他尝试重新启动手机,重新安装应用程序。同样的问题。然后我建议他使用他的常规帐户通过设置应用程序登录商店,下载几个免费应用程序,然后通过设置应用程序退出商店并重试。我的想法是,这个完整的过程会以某种方式“清除”他手机处于的任何不良状态。但没有骰子。同样的问题。

我们无法弄清楚他的设备处于什么状态,因此在进入此沙盒应用内购买流程的购买步骤时它会失败。我仍然能够在多个其他设备上成功完成该过程,因此我认为可购买物品的状态或在 iTunes 上测试用户不是问题。这似乎是他的设备特有的东西。我还让他使用 iPhone Config。在他完成此过程时查看控制台日志的实用程序。几乎没有看到 - 只是在尝试开始购买后返回一个错误代码。 (在沙盒上未正确设置应用内购买时,我之前见过的 PIPELINING 错误和其他 Web 服务类型错误都没有。)

关于他的手机在(沙盒)应用内购买方面可能处于什么状态,以及我们如何清除它?

【问题讨论】:

【参考方案1】:

重置您的网络设置(设置 -> 常规 -> 重置 -> 网络设置) 关闭您的 iPhone 并再次打开它。 等待 15 分钟(这是 iOS 缓存 AppStore 凭据的时间)

再次尝试运行该应用。

【讨论】:

感谢您提供的信息。即使我们以另一种方式解决了问题,我也会感谢您的答案。他以自己的身份(真实的 Apple ID)登录手机,下载了一个带有应用内购买的随机免费应用,去购买东西,直到标准 UI 的“购买”按钮确认购买,但改为按下取消。然后他退出并能够成功进行沙盒购买。所以我们的结论是,使用其他应用的应用内购买会重置。

以上是关于应用内购买沙盒之谜:手机处于无法启动购买状态的主要内容,如果未能解决你的问题,请参考以下文章

在应用购买中,使用沙盒进行测试

无法将应用内购买添加到此版本,因为它已提交审核

应用内购买:需要登录【环境:沙盒】

通过 id purchase live 测试沙盒应用内购买

无法在单击管理用户时看到应用内购买测试用户

iOS 应用内购买不适用于真实账户,但可以使用沙盒