Нет кнопки восстановления для покупки приложения вызывает отклонение - программирование
Подтвердить что ты не робот

Нет кнопки восстановления для покупки приложения вызывает отклонение

Я использую приложение, использующее при покупке приложения с элементами, не относящимися к расходным материалам, оно было отклонено яблоком, и причина такова:

Мы обнаружили, что ваше приложение предлагает In-App Purchase/s, которое можно восстановить, но оно не включает функцию "Восстановить" , позволяющую пользователям восстанавливать ранее приобретенные покупки In-App/s.

Чтобы восстановить ранее приобретенные продукты In-App Purchase, было бы целесообразно предоставить кнопку "Восстановить" и инициировать процесс восстановления при нажатии кнопки "Восстановить" .

Дополнительные сведения о восстановлении транзакций и проверке поступлений в магазине см. в

и ссылка на ссылку отсутствует, я уже реализовал:

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

с SKPaymentTransactionStateRestored.

но я не реализовал:

`restoreCompletedTransactions`  or `paymentQueueRestoreCompletedTransactionsFinished`

- эти методы, необходимые для одобрения покупки приложения, или то, что является точной проблемой.

Спасибо

4b9b3361

Ответ 1

Для восстановления идентификатора продукта, который пользователь приобрел в вашем приложении, используйте следующее:

- (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];
  }

}

купленные идентификаторы будут содержать все идентификаторы продуктов, которые пользователь купил. Вы можете поместить кнопку для вызова этой функции, когда она закончится, вы покажете все эти продукты, чтобы позволить пользователю загрузить ее снова.