В соответствии с предложением Apple, я приложил кнопку к своему приложению для восстановления старых успешных транзакций в приложении для покупок в приложении.
Проблема заключается в следующем. Пользователь нажимает кнопку, и приложение начинает восстановление транзакций. Если приложение по какой-либо причине закрыто во время этого процесса, процесс продолжится при следующем запуске приложения.
В моем случае восстановление всех транзакций может занять некоторое время, особенно если у пользователя много транзакций. Итак, когда приложение запускается снова, я вижу черный экран, и приложение не загружается, пока не будет восстановлена последняя транзакция.
Видимо, процесс восстановления транзакций приводит к зависанию приложения, которое не загружается, пока не завершится.
Как рекомендует Apple, у меня это есть в начале моего приложения ...
CustomStoreObserver *observer = [[CustomStoreObserver alloc] init];
[[SKPaymentQueue defaultQueue] addTransactionObserver:observer];
Это полезно для восстановления прерванных продаж, но в моем случае это вызывает боль, когда вопрос восстанавливает старые купленные транзакции.
Я хотел бы иметь возможность прервать любое восстановление старых транзакций, которые могли бы выполняться при запуске программы, и просто разрешить их во время работы приложения.
Есть ли способ сделать это?