detectInstalledUpiApps function
Implementation
Future<List<String>> detectInstalledUpiApps() async {
List<String> installedApps = [];
final upiPackages = getUpiAppPackages();
for (final app in upiPackages.keys) {
if (Platform.isAndroid) {
try {
final isInstalled = await UpiAppChecker.isAppInstalled(
upiPackages[app]!['android']!,
);
if (isInstalled) installedApps.add(app);
} catch (e) {
// Ignore error
}
} else if (Platform.isIOS) {
try {
final uri = Uri.parse(upiPackages[app]!['ios']!);
final isInstalled = await canLaunchUrl(uri);
if (isInstalled) installedApps.add(app);
} catch (e) {
// Ignore error
}
}
}
return installedApps;
}