Search packages, repositories and app categories

Package detailsv1.1.4

permissions_plugin

Plugin for permission managment on runtime

30-day downloads
34
Likes
15
Pub points
30

Install package

flutter pub add permissions_plugin

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

The permissions_plugin is a Flutter package designed to manage runtime permissions across different platforms. It provides a unified interface for requesting and checking permissions such as camera, microphone, location, and storage. The plugin simplifies permission handling in apps by abstracting platform-specific logic, ensuring consistent behavior on both Android and iOS. It supports dynamic permission requests at runtime, helping developers comply with modern OS requirements. With minimal setup, it enables secure and user-friendly access to sensitive device features.

Use cases

  • Requesting camera access in a photo app
  • Checking location permissions before showing maps
  • Managing storage access for file uploads
  • Handling microphone permissions in voice recording apps
  • Ensuring compliance with privacy regulations

Key features

  • Cross-platform permission management
  • Runtime permission requests
  • Simple API for checking and requesting permissions
  • Supports common device permissions
  • Minimal boilerplate code

Suitable for

  • Mobile apps requiring device feature access
  • Apps targeting both Android and iOS
  • Developers seeking easy permission handling
  • Privacy-conscious applications
  • Projects needing compliance with OS permission policies

Considerations

  • Does not support all possible permissions out of the box
  • Requires manual configuration for custom permissions
  • Limited documentation compared to popular alternatives
  • Platform-specific behaviors may vary slightly
  • No built-in UI for permission dialogs

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

Permissions Plugin

Build version

Plugin for permission managment on runtime.

Getting Started

Installing
Use this package as a library

1. Depend on it Add this to your package's pubspec.yaml file:

dependencies:
  permissions_plugin: ^1.1.4

2. Install it You can install packages from the command line:

with Flutter:

$  flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it Now in your Dart code, you can use:

import 'package:permissions_plugin/permissions_plugin.dart';
New Features!
  • Request ignore battery optimization
  • check status ignore battery optimization

You can also:

  • Request permission on runtime
  • Check status permission on runtime
Request permission
import 'package:permissions_plugin/permissions_plugin.dart';

Map<Permission, PermissionState> permission = await PermissionsPlugin
    .requestPermissions([
        Permission.ACCESS_FINE_LOCATION,
        Permission.ACCESS_COARSE_LOCATION,
        Permission.READ_PHONE_STATE
    ]);
Check status permission
import 'package:permissions_plugin/permissions_plugin.dart';

Map<Permission, PermissionState> permission = await PermissionsPlugin
    .checkPermissions([
      Permission.ACCESS_FINE_LOCATION,
      Permission.ACCESS_COARSE_LOCATION,
      Permission.READ_PHONE_STATE
    ]);
Request ignore battery optimization
import 'package:permissions_plugin/permissions_plugin.dart';

final PermissionState resBattery = await PermissionsPlugin
    .requestIgnoreBatteryOptimization;
Check status ignore battery optimization
import 'package:permissions_plugin/permissions_plugin.dart';

final PermissionState status = await PermissionsPlugin
    .isIgnoreBatteryOptimization;
List Permissions

Current suport Android only

enum Permission {
  READ_CALENDAR,
  WRITE_CALENDAR,
  READ_CALL_LOG,
  WRITE_CALL_LOG,
  PROCESS_OUTGOING_CALLS,
  CAMERA,
  READ_CONTACTS,
  WRITE_CONTACTS,
  GET_ACCOUNTS,
  ACCESS_FINE_LOCATION,
  ACCESS_COARSE_LOCATION,
  RECORD_AUDIO,
  READ_PHONE_STATE,
  CALL_PHONE,
  ADD_VOICEMAIL,
  USE_SIP,
  BODY_SENSORS,
  SEND_SMS,
  RECEIVE_SMS,
  READ_SMS,
  RECEIVE_WAP_PUSH,
  RECEIVE_MMS,
  READ_EXTERNAL_STORAGE,
  WRITE_EXTERNAL_STORAGE
}
List Permissions state
enum PermissionState {
  GRANTED,
  DENIED,
  UNKNOWN
}

### Platform Support

OS Min Version
Android minSdkVersion 16
IOS soon

License

MIT

AUTHOR

This plugin is developed, Free Software, by Kevin Caicedo

Categories

Source repository

Projects using this package

No data available yet.