launchUPIApp function
send link & option to launchUPIApp, platform handling is done here
Implementation
Future<void> launchUPIApp(
{required String link, required UPIApp option}) async {
final url = rewriteUrl(Uri.parse(link), option);
if (option.supportsIntentLaunch && PlatformUtils.isAndroid) {
final AndroidIntent intent = AndroidIntent(
action: 'action_view',
data: url.toString(),
package: option.androidPackageName,
);
if (kDebugMode) {
Logger.log('[Payment] Launching $url');
Logger.log('[Payment] package: ${option.androidPackageName}');
}
await intent.launch();
return;
}
if (kDebugMode) {
Logger.log('[Payment] Launching url $url');
}
launchUrl(
Uri.parse(url),
mode: LaunchMode.externalApplication,
);
}