** Редактировать: я сузил причину покупки с размещенным на Apple контентом. Обычные покупки, которые не являются размещенным контентом, восстанавливаются должным образом.
Я не могу восстановить покупки в моем приложении. Покупки работают совершенно нормально. Однако, когда я использую функцию, которая вызывает:
SKPaymentQueue.default().restoreCompletedTransactions()
Очередь платежей никогда не называется
func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
//Not called!
}
PaymentQueue не имеет проблем для обычных покупок.
Похоже, что восстановление завершается должным образом, потому что после запуска выше .restoredCompletedTransactions я немедленно получаю эту функцию.
func paymentQueueRestoreCompletedTransactionsFinished(_ queue: SKPaymentQueue) {
print ("This works")
}
Я также проверил следующее и не получил ошибку:
func paymentQueue(_ queue: SKPaymentQueue, restoreCompletedTransactionsFailedWithError error: Error)
SKPaymentQueue.add (self) вызывается задолго до restoreCompletedTransactions, поэтому это также не должно быть проблемой.
Что может привести к тому, что IAP работает нормально, но не восстановление? Я тестирую его с физического устройства и использую учетную запись «песочницы».
Этот недавний вопрос имел похожую проблему , но так и не получил ответа. Кроме того, я не уверен, имеет ли это значение, но для покупок используется размещенный на Apple контент.
Любая помощь будет очень признательна! Это убивает меня здесь.