Как обрабатывать отмены покупок в приложении iOS (Flutter)IOS

Программируем под IOS
Гость
Как обрабатывать отмены покупок в приложении iOS (Flutter)

Сообщение Гость »

Когда пользователь завершает транзакцию (используя пакет покупок в приложении от Flutter), я знаю, что мне нужно позвонить:

Код: Выделить всё

.completePurchase(Purchase)
Однако, когда пользователю предлагается приобрести товар, и он отменяет его, должен ли я также вызывать CompletePurchase?
Я' Я спрашиваю об этом, потому что если пользователь затем попытается снова купить тот же непотребляемый продукт в том же сеансе приложения (приложение не было закрыто), появится следующий вывод:

Код: Выделить всё

[VERBOSE-2:ui_dart_state.cc(177)] Unhandled Exception: PlatformException(storekit_duplicate_product_object, There is a pending transaction for the same product identifier. Please either wait for it to be finished or finish it manually using completePurchase to avoid edge cases., {applicationUsername: null, requestData: null, quantity: 1, productIdentifier: 1, simulatesAskToBuyInSandbox: true}, null)
Каково решение проблемы, когда:

Код: Выделить всё

purchases[0].status == PurchaseStatus.canceled
?
Когда я вызываю .completePurchase(Purchase) для отмененной транзакции, кажется, что все работает нормально, а это означает, что пользователь может снова попытаться купить не- расходный продукт. Но я не уверен, что это правильный способ справиться с этой ситуацией

Источник: https://stackoverflow.com/questions/779 ... os-flutter

Вернуться в «IOS»