navigateToWallet method
Navigate to the wallet payment screen with countdown functionality.
This method launches the wallet payment interface where users can complete payments using various wallet methods including QR codes, mobile wallets, and alias-based payments.
Parameters
locale
- Locale for the payment screen UIonPay
- Callback function called when payment is completedonCountComplete
- Callback function called when countdown expiresgetTransactionFunction
- Function to retrieve transaction detailstransactionId
- Unique identifier for this transactioncountDownInSeconds
- Duration for payment timeout countdownlog
- Optional callback for logging payment events
Usage
await walletSdk.navigateToWallet(
Locale('en'),
(result) => print('Payment completed: $result'),
(result) => print('Countdown expired: $result'),
() => getTransactionDetails(),
'txn_12345',
300, // 5 minutes
(event) => print('Wallet event: $event'),
);
Implementation
Future<void> navigateToWallet(
Locale locale,
OnPayCallback onPay,
OnPayCallback onCountComplete,
GetTransactionFunction getTransactionFunction,
String transactionId,
int countDownInSeconds,
EventCallback? log,
) async {
await AmwalSdkNavigator.amwalNavigatorObserver.navigator!.push(
MaterialPageRoute(
builder: (_) => WalletSdkApp(
locale: locale,
onPay: onPay,
onCountComplete: onCountComplete,
transactionId: transactionId,
getTransactionFunction: getTransactionFunction,
countDownInSeconds: countDownInSeconds,
log: log,
),
),
);
}