pub package Build status style: flutter_lints

A common platform interface for the geolocator plugin.

This interface allows platform-specific implementations of the geolocator plugin, as well as the plugin itself, to ensure they are supporting the same interface. Have a look at the Federated plugins section of the official Developing packages & plugins documentation for more information regarding the federated architecture concept.


To implement a new platform-specific implementation of geolocator, extend GeolocatorPlatform with an implementation that performs the platform-specific behavior, and when you register your plugin, set the default GeolocatorPlatform by calling GeolocationPlatform.instance = MyPlatformGeolocator().

Note on breaking changes

Strongly prefer non-breaking changes (such as adding a method to the interface) over breaking changes for this package.

See for a discussion on why a less-clean interface is preferable to a breaking change.


Please file any issues, bugs or feature requests as an issue on our GitHub page. Commercial support is available, you can contact us at

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.


This Geolocator plugin for Flutter is developed by Baseflow.