【问题标题】:iOS in-app-purchase restore returns many transactionsiOS 应用内购买恢复返回许多交易
【发布时间】:2012-06-06 10:29:42
【问题描述】:

当我恢复我之前的购买时。 Storekit 正在调用 updateTransations,之前有大量交易。不知道为什么每次还原都会返回如此大的数量,例如 100、200、245、360、650。

这种情况只发生在沙盒中吗? 如果不是,那么选择该项目的标准应该是什么。我有许多具有相同产品 ID 的商品?

【问题讨论】:

  • 如何恢复购买的物品?请检查我的答案here

标签: iphone ios in-app-purchase restore


【解决方案1】:

有很多关于使用 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;
        }
    }
}

如果没有需要恢复的项目,我想知道如何在界面上不添加“恢复”按钮的情况下执行此操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多