18

我在我的生产应用程序中进行了应用程序内购买,并且我正在添加一个新项目进行销售。

但是,我无法在沙盒环境中测试新的应用内购买。我的购买显示正确。恢复作品。但是,如果我购买了商品,则会提示我登录。我使用测试用户帐户登录(我有 4 个大约一个月前工作并且处于活动状态)。然后我被定向到 AppStore,在那里我会弹出一个对话框,上面写着:[Environment: Sandbox] with cancel or continue。当我继续时,系统会提示我输入 Apple id 密码,我使用该密码并按 OK。它说“正在加载...”几秒钟,然后弹出窗口再次显示 [Environment Sandbox] 取消/继续。

我经历了大约5次。
我已经尝试过我之前用来测试的帐户我已经创建了一个新用户,我尝试在大约一个月前都可以使用的多台设备上进行测试。我已经重置了我的设备。

同时,我已经能够测试我的功能并且没问题 - 但我无法在发布更新之前进行我想做的端到端购买/测试。

有没有人见过类似的东西?我正在寻找任何建议。谢谢。

4

2 回答 2

12

好的。我已经想通了。这是我的测试帐户。由于我使用该帐户并通过设置-> App Store 登录,因此我使用信用卡和电子邮件通知进行注册。我使用了一个以前创建但尚未“激活”的旧帐户,并且它有效。因此,关键是不要通过“设置”->“商店”登录 - 保持退出状态。然后使用仅在 iTunes Connect 上创建但从未激活的测试帐户登录。

于 2012-08-10T18:20:17.147 回答
7

我也有一段时间遇到这个问题,但对我来说,解决方案是别的东西:我一直收到那个提示,而且我之前测试会话中的所有 SKPaymentTransactions 都在这个方法中重新出现:

paymentQueue:updatedTransactions:.

有些正在完成(并弄乱了我当地的采购记录),有些则一遍又一遍地失败。这是因为在我的代码中接收上述方法中的这些转换,一旦我处理了完成或失败的事务,我就没有调用:

[[SKPaymentQueue defaultQueue] finishTransaction:transaction];.

这会将它们从支付队列中删除。交易只是试图完成,因此提示和我搞砸的本地购买记录。

希望这可以帮助!:)

于 2014-01-03T22:18:44.197 回答