Восстановление iOS-покупки в приложении возвращает много транзакций

Когда я восстанавливаю свою предыдущую покупку.Storekit звонитupdateTransations с большим количеством предыдущих транзакций. Не знаю, почему он возвращает такие большие суммы, как 100, 200, 245, 360, 650, кажется случайным при каждом восстановлении.

Это происходит только в песочнице? Если нет, то какими должны быть критерии выбора товара. У меня много товаров с одинаковым идентификатором продукта?

 Malek_Jundi06 июн. 2012 г., 12:33
как вы восстанавливаете купленные вещи? пожалуйста, проверьте мой ответhere

Ответы на вопрос(1)

Было много жалоб на использование updateTransactions для восстановления. Приведенный ниже код будет работать, но для этого потребуется ввести имя пользователя и пароль. (сейчас разработчики придерживаются этого в вызове IBAction, для которого требуется кнопка)

[[SKPaymentQueue defaultQueue] addTransactionObserver:self];
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];

Затем вызывается следующий делегат.

- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
{
     for (SKPaymentTransaction *transaction in queue.transactions) 
    {
        if ([myItem.productID isEqualToString:transaction.payment.productIdentifier])
        {
            myItem.purchased = YES;
        }
    }
}

Я хочу знать, как это сделать, не вставляя & quot; восстановить & quot; Кнопка на моем интерфейсе, если нет элементов, которые необходимо восстановить.

Ваш ответ на вопрос