iPhone - 针对失败的应用内购买测试

时间:2011-07-16 22:18:35

标签: ios iphone in-app

Apple声称所有使用应用内购买的应用都必须使用

[[SKPaymentQueue defaultQueue] addTransactionObserver:self.observer];

在应用程序开头处理任何成功销售,由于某种原因设备尚未收到确认以发布内容。

我正在尝试测试这个,尝试在即将完成交易时退出手机,退出应用程序或在交易结束前停止Xcode,但出于某种原因,即使我退出Xcode,iOS似乎仍在继续处理交易,应用程序永远不会收到SKPaymentTransactionStateRestored。该应用程序始终收到SKPaymentTransactionStatePurchased并且似乎是失败证明(可能新的iOS 4处理比StoreKit发布时的3.2更好)。

我的问题是:你们知道我可以在这里创建任何情况来生成失败并在应用程序启动时收到SKPaymentTransactionStateRestored吗?我需要测试应用程序是否适用于这种情况。

感谢

1 个答案:

答案 0 :(得分:2)

SKPaymentTransactionStateRestored仅适用于您致电restoreCompletedTransactions的情况(因此用户可以在新设备上恢复其应用内购买)。如果您在未调用finishTransaction:的情况下退出应用,则交易将保留在队列中,您将再次获得SKPaymentTransactionStatePurchased