photoPermission static method
Implementation
static Future<Map<int, List<String>>> photoPermission({
required String? mainKey,
required List<String?>? matchkeyList,
required bool isCamera,
}) async {
int isGspon = -1;
// -1 -> dont need
Map<String, bool> permissions = {};
bool containsKey = matchkeyList!.any(
(key) => key?.trim().toLowerCase() == mainKey?.trim().toLowerCase());
if (isCamera) {
permissions = await requestCameraPermission();
} else {
permissions = await getPhotoPermission();
}
Map<String, bool> audioPermissions = await requestAudioPermission();
permissions.addAll(audioPermissions);
if (containsKey) {
Map<String, bool> locationPermissions = await requestLocationPermission();
permissions.addAll(locationPermissions);
isGspon = await Geolocator.isLocationServiceEnabled() ? 1 : 0;
}
List<String> errorList = permissions.entries
.where((entry) => !entry.value)
.map((entry) => entry.key)
.toList();
return {isGspon: errorList};
}