Flutter in_app_purchase: поток покупок не выдается на iOS, когда пользователь отменяет платежный листIOS

Программируем под IOS
Ответить
Anonymous
 Flutter in_app_purchase: поток покупок не выдается на iOS, когда пользователь отменяет платежный лист

Сообщение Anonymous »

Я использую пакет in_app_purchase во Flutter. У меня следующая настройка:
Инициация покупки:

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

await InAppPurchase.instance.buyNonConsumable(purchaseParam: purchaseParam,);
Прослушиватель потока:

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

  InAppPurchase.instance.purchaseStream.listen(
_onPurchaseUpdate,
onDone: _onStreamDone,
onError: _onError,
);
Обработчик обновления покупки:

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

  Future _onPurchaseUpdate(
List
 purchaseDetailsList,
) async {
for (final purchaseDetails in purchaseDetailsList) {
await _handlePurchase(purchaseDetails);
}
}
Индивидуальный менеджер по закупкам:

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

  /// Handles a single purchase update.
Future _handlePurchase(PurchaseDetails purchaseDetails) async {
switch (purchaseDetails.status) {
case PurchaseStatus.purchased:
// do some work

case PurchaseStatus.restored:
// do some work

case PurchaseStatus.error:
// do some work

case PurchaseStatus.canceled:
// do some work

case PurchaseStatus.pending:
// do some work
}
}
Проблема:
  • Я открываю приложение на iOS.
  • Я запускаю процесс покупки.
  • Появляется лист оплаты iOS.
  • Пользователь отменяет лист оплаты.
  • Поток покупок ничего не генерирует.
  • Загрузчик, который я показываю в своем приложении, когда инициирую процесс покупки, остается зависшим навсегда. потому что
    Я не знаю, что покупка была отменена.
Я много исследовал и, похоже, не смог найти способ исправить это.
Как узнать, была ли покупка отменена?

Подробнее здесь: https://stackoverflow.com/questions/798 ... -cancels-p
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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