locationPermissionsGranted static method

Future<bool> locationPermissionsGranted(
  1. {bool openSettingOption = true}
)

Implementation

static Future<bool> locationPermissionsGranted(
    {bool openSettingOption = true}) async {
  if (!getBoolAsync(PERMISSION_STATUS)) {
    Map<Permission, PermissionStatus> cameraPermissionStatus =
        await _handler.requestPermissions(
      [
        Permission.location,
        if (isIOS) Permission.locationAlways,
        if (isIOS) Permission.locationWhenInUse,
      ],
    );

    bool checkedTrue = true;
    cameraPermissionStatus.values.forEach((element) {
      if (element == PermissionStatus.granted) {
        checkedTrue = true;
      } else if (element == PermissionStatus.permanentlyDenied) {
        if (openSettingOption) openAppSettings();
        checkedTrue = false;
      } else {
        checkedTrue = false;
      }
    });

    return checkedTrue;
  }
  return true;
}