status method

  1. @override
Future<PermissionStatus> status(
  1. Permission permission
)
override

Implementation

@override
Future<PermissionStatus> status(Permission permission) async {
  if (statusError != null) throw statusError!;
  if (_iosLocationServicesOff(permission)) {
    return PermissionStatus.permanentlyDenied;
  }
  final s = rawStatus(permission);
  if (info.isAndroid && s == PermissionStatus.permanentlyDenied) {
    return PermissionStatus.denied;
  }
  if (info.isIOS &&
      permission == Permission.locationAlways &&
      s == PermissionStatus.denied &&
      rawStatus(Permission.locationWhenInUse) == PermissionStatus.granted) {
    return PermissionStatus.permanentlyDenied;
  }
  return s;
}