completePendingIosTransactions method

Future<void> completePendingIosTransactions()

Implementation

Future<void> completePendingIosTransactions() async {
  if (Platform.isIOS) {
    final transactions = await SKPaymentQueueWrapper().transactions();

    for (final transaction in transactions) {
      if (transaction.transactionState == SKPaymentTransactionStateWrapper.purchased ||
          transaction.transactionState == SKPaymentTransactionStateWrapper.restored ||
          transaction.transactionState == SKPaymentTransactionStateWrapper.failed) {
        try {
          await SKPaymentQueueWrapper().finishTransaction(transaction);
          AppLogs.showInfoLogs("Finished pending transaction: ${transaction.transactionIdentifier}");
        } catch (e) {
          AppLogs.showErrorLogs("Failed to finish transaction: $e");
        }
      }
    }
  }
}