location_permissions 1.0.0
location_permissions: ^1.0.0 copied to clipboard

Flutter Android iOS

Location permission plugin for Flutter. This plugin provides a cross-platform (iOS, Android) API to check and request access to the location services on the device.

Flutter Location Permissions Plugin #

pub package

The Location Permissions plugin for Flutter. This plugin provides a cross-platform (iOS, Android) API to check and request permissions to access location services.

BranchBuild Status
developBuild Status
masterBuild Status

Features #

  • Check if permission to access location services is granted.
  • Request permission to access location services.
  • Open app settings so the user can allow permission to the location services.
  • Show a rationale for requesting permission to access location services (Android).

Usage #

To use this plugin, add location_permissions as a dependency in your pubspec.yaml file. For example:

dependencies:
  location_permissions: '^1.0.0'

API #

Requesting permission #

import 'package:location_permissions/location_permissions.dart';

PermissionStatus permission = await LocationPermissions.requestPermissions();

Checking permission #

import 'package:location_permissions/location_permissions.dart';

PermissionStatus permission = await LocationPermissions.checkPermissionStatus();

Checking service status #

import 'package:location_permissions/location_permissions.dart';

ServiceStatus serviceStatus = await LocationPermissions.checkServiceStatus();

Open app settings #

import 'package:location_permissions/location_permissions.dart';

bool isOpened = await LocationPermissions.openAppSettings();

Show a rationale for requesting permission (Android only) #

import 'package:location_permissions/location_permissions.dart';

bool isShown = await LocationPermissions.shouldShowRequestPermissionRationale();

This will always return false on iOS.

List of available permissions levels (only applicable for iOS) #

Defines the location permission levels for which can be used on iOS to distinguish between permission to access location services when the app is in use or always.

enum LocationPermissionLevel {
  /// Android: Fine and Coarse Location
  /// iOS: CoreLocation (Always and WhenInUse)
  location,
  
  /// Android: Fine and Coarse Location
  /// iOS: CoreLocation - Always
  locationAlways,

  /// Android: Fine and Coarse Location
  /// iOS: CoreLocation - WhenInUse
  locationWhenInUse,
}

Status of the permission #

Defines the state of a location permissions

enum PermissionStatus {
  /// Permission to access the location services is denied by the user.
  denied,

  /// Permission to access the location services is granted by the user.
  granted,

  /// The user granted restricted access to the location services (only on iOS).
  restricted,

  /// Permission is in an unknown state
  unknown
}

Overview of possible service statuses #

Defines the state of the location services on the platform

/// Defines the state of the location services
enum ServiceStatus {
  /// The unknown service status indicates the state of the location services could not be determined.
  unknown,

  /// Location services are not available on the device.
  notApplicable,

  /// The location services are disabled.
  disabled,

  /// The location services are enabled.
  enabled
}

Issues #

Please file any issues, bugs or feature request as an issue on our GitHub page.

Want to contribute #

If you would like to contribute to the plugin (e.g. by improving the documentation, solving a bug or adding a cool new feature), please carefully review our contribution guide and send us your pull request.

Author #

This Permission handler plugin for Flutter is developed by Baseflow. You can contact us at hello@baseflow.com

78
likes
90
pub points
96%
popularity

Publisher

baseflow.com

Location permission plugin for Flutter. This plugin provides a cross-platform (iOS, Android) API to check and request access to the location services on the device.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

Dependencies

flutter

More

Packages that depend on location_permissions