PermissionMadeEasy

Additional

Language
Kotlin
Version
1.2.3 (May 1, 2020)
Created
Dec 24, 2017
Updated
Sep 25, 2021 (Retired)
Owner
Somesh Kumar (TheSomeshKumar)
Contributors
Somesh Kumar (TheSomeshKumar)
Somesh Kumar (somesh-basicx)
2
Activity
Badge
Generate
Download
Source code

Note: Deprecated as the new way of requesting permission is quite straightforward

PermissionMadeEasy

Android Library for Easily calling Runtime Permission on Android Marshmallow and above

How to build

Add Jitpack.io to your project level build.gradle file

allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}

Add the dependency

dependencies {
   implementation 'com.github.thesomeshkumar:permissionmadeeasy:1.2.3'
 }

How to use

Create a PermissionHelper object

permissionHelper = PermissionHelper.Builder()
        .with(this)
        .requestCode(REQUEST_CODE_MULTIPLE)
        .setPermissionResultCallback(this)
        .askFor(Permission.CALENDAR, Permission.CAMERA, Permission.CONTACTS,
                Permission.LOCATION, Permission.MICROPHONE, Permission.STORAGE,
                Permission.PHONE, Permission.SMS, Permission.SENSORS)
        .rationalMessage("Permissions are required for app to work properly")
        .build()

and when you want to ask for the permission just call

permissionHelper.requestPermissions()

Override onPermissionsGranted and onPermissionsDenied functions

Also override onRequestPermissionsResult and pass the arguments recieved to PermissionHelper class' onRequestPermissionsResult function.

@Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        permissionHelper.onRequestPermissionsResult(requestCode, permissions, grantResults);
    }

Detailed full sample project is included. Check DemoActivity for full implemetation