6

テストユーザーを使用して非消耗品を購入しましたが、これを呼び出すと:

[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];

PaymentQueueRestoreCompletedTransactionsFinishedにトランザクションが表示されません。コードは次のようになります。

- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
{
    NSLog(@"received restored transactions: %i", queue.transactions.count);
    for (SKPaymentTransaction *transaction in queue.transactions)
    {
        [self restoreTransaction:transaction];
    }

    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Success" message:@"Your add-ons have been restored." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [alertView show];
    return;
}

ログには常に「受信した復元されたトランザクション:0」が表示されますが、1つのトランザクションが表示されると予想されます。トランザクションが返されない理由を誰かが知っていますか?

4

1 に答える 1

7

今、それは突然働き始めました!変更したのは、iTunes Connectにアクセスして製品の説明を編集し、ステータスが「拒否」から「保留中」に変わるようにすることだけでした。奇妙なことに、購入はまだ機能しており(「拒否」状態でも)、復元のみが機能しませんでした。その変更の直後に復元を試みましたが、機能しませんでしたが、現在(約20分後)、復元は機能しています。保留に変更すると、修正されている必要があります(変更がStoreKitサーバーに反映されるまでに時間がかかった後)。そうでない場合、これはある種の断続的なStoreKitのバグです。

于 2012-06-16T01:14:49.613 に答える