こんにちは、私はInapp-購入で復元機能を実装する必要がありながら、これはボタン「復元」呼び出しているメソッドpaymentQueue:(SKPaymentQueue *)キューupdatedTransactions:restoreCompletedTransactions
をしたため(NSArrayの*)トランザクションは、呼び出されません-(void)restorePurchasedProductsWithProductId:(NSString*)prodID
{
_productIdsArray = [[NSMutableArray alloc] init];
productID = [prodID retain];
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
}
リンゴidのパスワードを入力するためのポップアップが表示されます。それ以降は何も起こりません。
私はそれは私がこの
- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions
{
NSLog(@"paymentQueue");
for (SKPaymentTransaction *transaction in transactions)
{
switch (transaction.transactionState)
{
case SKPaymentTransactionStatePurchased:
[self completeTransaction:transaction];
break;
case SKPaymentTransactionStateFailed:
[self failedTransaction:transaction];
break;
case SKPaymentTransactionStateRestored:
NSLog(@"restored");
[self restoreTransaction:transaction];
break;
default:
break;
}
}
}
のようでしたが、問題は上記の方法は、この
- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
も
どちらを呼び出していないです- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions
を呼び出すことをどこかで読ん
-(void)paymentQueue:(SKPaymentQueue *)queue restoreCompletedTransactionsFailedWithError:(NSError *)error
私はまた、必要なプロトコルが含まれているこれらのデリゲートメソッドは、復元プロセスのために呼び出しされていない理由を
いくつかの体は私を助けることができます。 私はテストアカウントで試しています。