应用内购买没有恢复按钮会导致拒绝

Nid*_*aed 21 xcode objective-c in-app-purchase ios

我正在实施一个应用程序使用非消耗品购买应用程序,它被苹果拒绝,原因是:

我们发现您的应用提供了可以恢复的应用内购买,但它不包含"恢复"功能,以允许用户恢复之前购买的应用内购买.

要恢复以前购买的应用程序内购买产品,最好提供"恢复"按钮,并在点击"恢复"按钮时启动恢复过程.

有关恢复交易和验证商店收据的更多信息,请参阅

并且没有链接可以参考,我已经实现了:

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions

SKPaymentTransactionStateRestored案件.

但我没有实现:

`restoreCompletedTransactions`  or `paymentQueueRestoreCompletedTransactionsFinished`
Run Code Online (Sandbox Code Playgroud)

这些方法是批准应用内购买所必需的,或者是什么是确切的问题.

谢谢

Mal*_*ndi 22

使用以下命令恢复用户从您的应用中购买的产品ID

- (void) checkPurchasedItems
{
   [[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
}// Call This Function

//Then this delegate Function Will be fired
- (void) paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
{
  purchasedItemIDs = [[NSMutableArray alloc] init];

  NSLog(@"received restored transactions: %i", queue.transactions.count);
  for (SKPaymentTransaction *transaction in queue.transactions)
  {
      NSString *productID = transaction.payment.productIdentifier;
      [purchasedItemIDs addObject:productID];
  }

}
Run Code Online (Sandbox Code Playgroud)

purchaseItemIDs将包含用户购买它的所有产品ID ..您可以在完成后点击此按钮调用此功能,以显示所有这些产品,以便用户再次下载.

  • 谢谢它解决了我的问题.对于其他人,如果您不提供还原功能,Apple将拒绝您的申请.这是他们的新政策. (6认同)