アプリ内購入が復元されると、次のデリゲート メソッドが呼び出されます。
-(void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue {
NSLog(@"%@", queue.transactions);
for (SKPaymentTransaction *transaction in queue.transactions) {
//restore
}
}
queue.transactions
復元された製品は 1 つだけですが、多くのトランザクションがあります(この例では、20 を超えるトランザクションがログに書き込まれています)。なんで?トランザクションは 1 つだけであるべきではありませんか? サーバーから製品のダウンロードを開始すると、アレイ内のトランザクションが多すぎるため、20 回のダウンロードが行われることになります。