Знайте триггер, когда пользователь нажимает кнопки отмены во время покупки в приложении - PullRequest
0 голосов
/ 07 мая 2020

Я интегрировал функциональность IAP в свое приложение flutter. Я хочу знать, когда пользователь нажимал кнопку «Отмена» во всплывающем окне IAP. Здесь найдено много решений, но весь код находится на нативном языке. Будет очень полезно, если я получу триггер нажатия кнопки отмены во флаттере iOS. Нажмите кнопку отмены, мне нужно выполнить другие функции.

Я выполнил код интеграции IAP по этой ссылке: https://fireship.io/lessons/flutter-inapp-purchases/, и всплывающее окно IAP отображается как всплывающее окно по умолчанию, а не настраиваемое .

Пожалуйста, дайте несколько предложений. Любая помощь будет оценена. Спасибо.

1 Ответ

0 голосов
/ 29 мая 2020

Я создал al oop для поиска неудачных транзакций и затем завершил их sh соответственно.

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

В плагин IAP включены оболочки StoreKit:

Примечание. Я просмотрел информацию SK для XCode и это нормально сделать с неудачной транзакцией. Они сказали, что делать это с ожидающим рассмотрения - это «нет-нет».

  Future<Null> _removeFailedPendingPurchases() async {
debugPrint(':::: SWIPE WAR ::::: _removeFailedPendingPurchases()');
final SKPaymentQueueWrapper paymentWrapper = SKPaymentQueueWrapper();
final List<SKPaymentTransactionWrapper> transactions =
    await paymentWrapper.transactions();
debugPrint(
    ':::: SWIPE WAR ::::: transactions ${transactions.length} ${transactions.toString()}');

for (SKPaymentTransactionWrapper transaction in transactions) {
  debugPrint('TRANSACTION everything : ${transaction.toString()}');
  debugPrint('TRANSACTION STATE : ${transaction.transactionState}');
  if (transaction.transactionState ==
      SKPaymentTransactionStateWrapper.failed)
    await paymentWrapper.finishTransaction(transaction);
}

return;

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...