4

以前の購入品を復元するとき。多数の以前のトランザクションでStorekit呼び出しています。updateTransations100、200、245、360、650 のような大量の値が、すべての復元でランダムに返される理由がわかりません。

それはサンドボックスでのみ発生しますか? いいえの場合、アイテムを選択する基準は何ですか。同じ商品IDの商品がたくさんありますか?

4

1 に答える 1

2

復元に 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;
        }
    }
}

復元する必要があるアイテムがない場合、インターフェイスに「復元」ボタンを配置せずにこれを行う方法を知りたいです。

于 2012-06-27T23:56:28.323 に答える