4

我正在尝试使用 iPhone 3.0 SDK 测试 Store Kit 事务。我的代码基于 Store Kit Programming Guide 中的示例代码,但我不断收到失败的交易(状态:SKPaymentTransactionStateFailed)。然而,事务的错误属性是 nil,所以这并不能说明情况。

当我尝试购买该产品时,我可以使用测试帐户登录并接受购买,但随后出现一个对话框,显示:

“您已经购买了这个,但尚未下载。点击确定立即下载。”

当我点击“确定”时,什么也没有发生。我的 transactionObserver 不再收到发送给它的任何消息。

4

5 回答 5

4

我对消耗品有完全相同的问题。事实证明,上面的答案是正确的。我的队友不小心删除了我的测试帐户。我创建一个新的后一切正常。

于 2010-09-21T21:22:23.917 回答
0

事实证明,我的测试帐户已从 iTunes Connect 中删除(即使它允许我登录)。我创建了一个新的测试帐户并开始工作。我相信“Tap OK to download it now”消息实际上是试图重新启动事务,然后再次失败。

于 2009-09-03T05:51:41.113 回答
0

我也一直得到这个。事实证明,您无法在模拟器中测试应用购买!

于 2012-07-18T09:36:40.113 回答
0

我在沙盒环境中遇到了同样的问题,发现它可能与 SKPaymentTransactionObserver 有关。

当我第一次实现这个时,我分配了 SKPaymentTransactionObserver 并仅在我开始购买时才添加它。此外,一旦交易成功或失败,我就删除了 SKPaymentTransactionObserver。我发现在这种情况下交易总是未完成,即使我在删除 SKPaymentTransactionObserver 之前完成了交易。

所以我的解决方案是,在应用程序启动时分配一个 SKPaymentTransactionObserver,然后在应用程序终止之前不要删除它。“未完成”的交易仍然需要正确完成。

希望这对你有用。

于 2011-07-27T08:12:15.803 回答
0

我遇到了这个确切的问题,原来我使用的是无效的测试帐户(测试帐户绑定到与应用程序链接的不同的苹果开发者帐户)。检查了测试帐户凭据,一切都很好。

@wdlindmeier:我看到您也有相同的解决方案:我建议您接受此答案或您自己的答案,以防万一。:)

于 2010-09-07T12:18:39.853 回答