Когда использовать restoreCompletedTransactions для покупок в приложении?

Для базового приложения с непотребляемыми покупками в приложении кто-нибудь нашел лучшие практики использования SKPaymentQueue?restoreCompletedTransactions

наблюдения

Я знаю это'Рекомендуется всегда регистрировать наблюдателя транзакции для получения ожидающих транзакций, которые возвращаются в приложение, но это другой вопрос. Это выглядит какrestoreCompletedTransactions это то, что приложение должно активно решать, когда звонить на опрос для всех покупок, которые уже сделал клиент.

Из того, что я могу сказать, метод предназначен для получения покупок, которые могли быть потеряны. Например, клиент может установить или переместить приложение на новое устройство таким образом, чтобы приложениеЛокальные записи предыдущих платежей потеряны или сброшены.

Обеспокоенность

Какие'Мне не ясно, как автоматически определить это состояние (т. е. как решить, когда проводить опрос о пропущенных покупках) надежным способом. Я нене хочу облажаться и рискнуть лишить клиента доступа к функциональности, которую ониМы уже заплатили.

В то же время я нене хочу звонитьrestoreCompletedTransactions каждый раз, когда приложение запускается просто для обеспечения безопасности и возврата транзакций, я знаю об этом уже в 99,9% случаев. (За исключением покупки в приложении, мое приложение нене требует подключения к сети.)

Заметки

В документации Apple разъясняется, что с клиентов не взимается плата за любые непотребляемые покупки, которые они уже сделали. Если они пытаются повторно купить, платежная транзакция все еще предположительно отправляется в приложение.

В худшем случае, покупатель может восстановить покупки таким образом, но яЯ все еще хотел бы избежать того, чтобы идти по пути, который напоминает перекупку чего-то, что ониМы уже заплатили.

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

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