当我恢复以前的购买时。 Storekit
正在使用大量先前的交易调用updateTransations
。不知道为什么它返回这些大量的100,200,245,360,650在每次恢复中都是随机的。
这只发生在沙箱中吗? 如果不是,选择项目的标准应该是什么。我有很多具有相同产品ID的商品?
答案 0 :(得分:3)
有很多关于使用updateTransactions进行恢复的投诉。以下代码可以使用,但需要用户输入用户名和密码。 (目前开发人员一直坚持使用需要按钮的IBAction调用)
[[SKPaymentQueue defaultQueue] addTransactionObserver:self];
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
然后调用下面的代表。
- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
{
for (SKPaymentTransaction *transaction in queue.transactions)
{
if ([myItem.productID isEqualToString:transaction.payment.productIdentifier])
{
myItem.purchased = YES;
}
}
}
如果没有需要恢复的项目,我想知道如何在我的界面上没有“恢复”按钮的情况下这样做。