checkAndRequestCameraAndStoragePermissions function
Future<bool>
checkAndRequestCameraAndStoragePermissions(
)
Implementation
Future<bool> checkAndRequestCameraAndStoragePermissions() async {
List<Permission> permissionsToRequest = [];
// Always include camera
permissionsToRequest.add(Permission.camera);
if (Platform.isAndroid) {
final int sdkInt = int.parse(Platform.version.split('.').first);
if (sdkInt >= 33) {
// Android 13 and above
permissionsToRequest.add(Permission.photos); // READ_MEDIA_IMAGES
permissionsToRequest.add(Permission.storage); // READ_MEDIA_IMAGES
} else {
// Android 12 and below
permissionsToRequest
.add(Permission.storage); // Covers both read and write
}
}
final Map<Permission, PermissionStatus> statuses =
await permissionsToRequest.request();
return (statuses.values.contains(false)) == false;
}