getLaunchableApplications method
Retrieves a list of user launchable apps installed on the device. Must be overridden by platorm implementations.
Implementation
@override
Future<List<AndroidAppInfo>> getLaunchableApplications() async {
List<Map<Object?, Object?>>? data;
try {
data = await methodChannel
.invokeListMethod<Map<Object?, Object?>>('getLaunchableApplications');
} on Exception catch (e) {
if (kDebugMode) {
debugPrint(
'Platform - Failed to getLaunchableApplications: ${e.toString()}');
}
data = [];
}
data ??= [];
List<AndroidAppInfo> apps = [];
for (var map in data) {
Map<String, dynamic> m = {};
for (var element in map.entries) {
m[element.key?.toString() ?? ''] = element.value;
}
final app = AndroidAppInfo.fromMap(m);
apps.add(app);
}
return apps;
}