pub package Build status style: effective dartcodecov

A common platform interface for the permission_handler plugin.

This interface allows platform-specific implementations of the permission_handler plugin, as well as the plugin itself, to ensure they are supporting the same interface.


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


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.

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.


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