iOS iAP Хостинг загрузки контента не работает
У меня есть несколько неиспользуемых iAP для моего приложения. Первая версия приложения включала соответствующий контент в комплект приложения, поэтому iAP были только для того, чтобы разблокировать области, которые могут получить доступ к контенту. Я работаю над второй версией приложения, и на этот раз контент будет загружен, когда пользователь совершит покупку. Я создал новые версии iAP (ВАЖНО: новые версии тех же самых iAP, но на этот раз добавили "размещенный контент", они не являются совершенно новыми iAP), размещенный контент был успешно загружен, и статус iAPs "Готов к отправке" ". Все работало, и контент загружался на устройство до 1 недели назад, когда по какой-то причине, когда я тестировал, покупка прошла успешно, но контент не загружается. Использование точки останова при создании SKPayment
объект, я вижу, что он имеет загружаемый контент:
(lldb) po product.downloadable
YES
Даже версия такая же, как в iTunes Connect:
(lldb) po product.downloadContentVersion
1.1
Но при обработке транзакции внутри -paymentQueue:updatedTransactions:
нет SKDownload
объекты:
(lldb) po transaction.transactionState
SKPaymentTransactionStatePurchased
(lldb) po transaction.downloads
<__NSArrayM 0x13e1d38a0>(
)
Я использую пользователя TestFlight Sandbox, и он показывает [Environment: Sandbox] при совершении покупки, поэтому я знаю, что я не в производственной среде.
Что здесь происходит? Почему вдруг перестал работать? Apple недавно что-то изменила? Это сводит меня с ума. Спасибо, любая помощь приветствуется.
1 ответ
Ну, у меня наконец-то есть ответ на этот вопрос. Оказывается, это была ошибка от Apple. Я запросил инцидент технической поддержки по этому поводу, и инженер Apple ответил:
К сожалению, это известная проблема. Пока это не решено, я могу только предложить, чтобы вы отправили отчет об ошибке и подготовили внешнюю сборку TestFlight, если команда QA попросит ее.
Но самое приятное то, что сегодня, слава Богу, Всемогущий, тот же инженер вернулся и сказал:
Теперь вы должны обнаружить, что эта проблема больше не должна происходить.
Я только что проверил, и я могу подтвердить, что ошибка исчезла.