large Flutter Favorite logosmall Flutter Favorite logo

location 1.4.1 icon indicating copy to clipboard operation
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:

MethodsDescription
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 !

2117
likes
0
pub points
100%
popularity

Publisher

verified publisher iconbernos.dev

A Flutter plugin for location with Callbacks.

Repository (GitHub)
View/report issues

License

Icon for licenses.unknown (LICENSE)

Dependencies

flutter

More

Packages that depend on location