2015-05-25 1 views
2

Мое приложение было отклонено за не выполнение функции «Восстановить покупки».Приложение отклонено за отсутствие функции «Восстановить» на покупку

Apple, говорит

Мы обнаружили, что ваше приложение предлагает In-App Purchase/с, которые могут быть восстановлены , но не включает в себя «Восстановить», чтобы позволить пользователям восстановить ранее приобрели In- Покупка приложений. Для восстановления ранее приобретенных продуктов In-App Purchase было бы целесообразно предоставить кнопку «Восстановить» и инициировать процесс восстановления при нажатии кнопки «Восстановить» .

Так что я, наконец, решил добавить, что и я обнаружил, что мы должны использовать

[[SKPaymentQueue defaultQueue] restoreCompletedTransactions]; 

Но это не поможет! Я искал похожие вопросы, но не нашел ни одного приложения для своего приложения. Это следующие ссылки, которые я сложенные до сих пор:

Restore already bought in-app-purchases on iPhone?

iOS6 - In app purchase with download from Apple server

Пожалуйста, помогите !! Заранее спасибо ..

+0

кстати вам нужно видимый «кнопку Восстановить », а не только код для автоматического восстановления –

+0

да, что я добавил! –

ответ

2

Попробуйте следующее:

Восстановить кнопку мыши ->

- (IBAction)retoreinApp:(id)sender 
{ 
    //set addTransactionObserver to self. 
    [[SKPaymentQueue defaultQueue] addTransactionObserver:self]; 
    [[SKPaymentQueue defaultQueue] restoreCompletedTransactions]; 

} 

Это будет вызывать

- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue { 

    UIAlertView *alert ; 
    if(queue.transactions.count >0) 
    { 
     for (SKPaymentTransaction *transaction in queue.transactions) 
     { 
      NSString *productId = transaction.payment.productIdentifier; 

      NSLog(@" ProductIdentifier is %@",productId); 
      if([productId isEqualToString:@"com.xy.yourProductId"]) 
      {//add code to add it to your account 
      } 
      alert = [[UIAlertView alloc ] initWithTitle:@"Restore Transactions" message:@"All your previous transactions are restored successfully." delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 

    } 
    else 
    { 
     alert = [[UIAlertView alloc ] initWithTitle:@"Restore Transactions" message:@"No transactions in your account to be restored." delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 

    } 
    [alert show]; 

} 
+0

Это работает !! еще раз спасибо :) –