苹果声明,所有使用应用内购买的应用程序都必须将此
[[SKPaymentQueue defaultQueue] addTransactionObserver:self.observer];在应用程序开始时,处理任何成功的销售,即由于某种原因,设备尚未收到发布内容的确认。
我正在尝试测试这一点,尝试在即将完成交易时拨打电话,退出应用程序或在交易完成前停止Xcode,但由于某些原因,即使我退出Xcode,iOS似乎仍在继续处理交易,应用程序从未收到SKPaymentTransactionStateRestored。这个应用程序总是收到SKPaymentTransactionStatePurchased,而且似乎是防故障的(也许新的iOS 4比StoreKit发布时的3.2版本更好地处理了这一点)。
我的问题是:你们知道我可以在这里创建什么情况来生成失败并在应用程序启动时接收SKPaymentTransactionStateRestored吗?我需要测试应用程序是否在这种情况下工作得很好。
谢谢
发布于 2011-07-17 06:26:23
SKPaymentTransactionStateRestored只在你调用restoreCompletedTransactions时使用(这样用户就可以在新设备上恢复他们在应用中的购买)。如果您在未调用finishTransaction:的情况下退出应用程序,事务将留在队列中,您将再次获得SKPaymentTransactionStatePurchased。
https://stackoverflow.com/questions/6720616
复制相似问题