location 1.4.1 copy "location: ^1.4.1" to clipboard
location: ^1.4.1 copied to clipboard

outdated

A Flutter plugin for location with Callbacks.

Flutter Location Plugin pub package #

This plugin for Flutter handles getting location on Android and iOS. It also provides callbacks when location is changed.

Demo App

Breaking Changes #

As of the 1.4 version, you have to call getLocation() instead of just getLocation and onLocationChanged() instead of onLocationChanged.

Getting Started #

In order to use this plugin in Android, you have to add this permission in AndroidManifest.xml :

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

Permission check for Android 6+ was added. Still no callback when permissions granted so aiming SDK 21 is safer.

And to use it in iOS, you have to add this permission in Info.plist :

NSLocationWhenInUseUsageDescription
NSLocationAlwaysUsageDescription

Then you just have to import the package with

import 'package:location/location.dart';

Look into the example for utilisation, but a basic implementation can be done like this for a one time location :

var currentLocation = <String, double>{};

var location = new Location();

// Platform messages may fail, so we use a try/catch PlatformException.
try {
  currentLocation = await location.getLocation;
} on PlatformException {
  currentLocation = null;
}

You can also get continuous callbacks when your position is changing:

var location = new Location();

location.onLocationChanged.listen((Map<String,double> currentLocation) {
  print(currentLocation["latitude"]);
  print(currentLocation["longitude"]);
  print(currentLocation["accuracy"]);
  print(currentLocation["altitude"]);
  print(currentLocation["speed"]);
  print(currentLocation["speed_accuracy"]); // Will always be 0 on iOS
});

API #

In this table you can find the different functions exposed by this plugin:

Methods Description
Future<Map<String, double>> getLocation()
Allow to get a one time position of the user.
Future<bool> hasPermission()
Return a boolean to know the state of the location permission.
Stream<Map<String, double>> onLocationChanged()
Get the stream of the user's location.

Feedback #

Please feel free to give me any feedback helping support this plugin !

2734
likes
30
pub points
100%
popularity

Publisher

verified publisherbernos.dev

A Flutter plugin for location with Callbacks.

Repository (GitHub)
View/report issues

License

BSD-3-Clause (LICENSE)

Dependencies

flutter

More

Packages that depend on location