1

我能够成功地进行应用内购买并从 Apple 服务器下载内容并使用它。
我的应用内购买内容是非消耗品。所以我在我的应用程序中提供“恢复”按钮
现在当用户按下“恢复”按钮时,我正在调用该方法:

restoreCompletedTransactions

但是在这里,我没有接到委托方法的调用:

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions

这样我就可以识别交易对象并再次开始从苹果服务器下载内容。有人可以帮我写“恢复”选项吗?

根据苹果,它说:

// 异步。将当前用户的已完成事务添加回待重新完成的队列。将要求用户进行身份验证。观察者将收到 0 个或多个 -paymentQueue:updatedTransactions:,然后是 -paymentQueueRestoreCompletedTransactionsFinished: 成功或 -paymentQueue:restoreCompletedTransactionsFailedWithError: 失败。在部分成功的情况下,一些交易可能仍会交付。

但对我来说,我根本没有接到“paymentQueue:updatedTransactions”的电话。我刚接到电话“paymentQueueRestoreCompletedTransactionsFinished:”

4

1 回答 1

2

您可能没有观察到事务队列。确保你有

[[SKPaymentQueue defaultQueue] addTransactionObserver:self];

在调用 restoreCompletedTransactions 方法之前的某个地方

于 2012-12-03T15:59:49.727 回答