This a simple android library that make it easy to request run-time permission.
implementation 'com.persion.quickpermissionlib:QuickPermission:0.0.2'
here is an example.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.persion.quickpermission">
<uses-permission android:name="android.permission.CAMERA"/>
<application
....
QuickPermission quickPermission;
quickPermission = new QuickPermission(this);
quickPermission.quick(Manifest.permission.CAMERA, 200, new QuickPermissionListener() {
@Override public void permissionGranted() {
Toast.makeText(MainActivity.this, "Permission granted", Toast.LENGTH_SHORT).show();
}
@Override public void permissionDenied() {
Toast.makeText(MainActivity.this, "permission denied", Toast.LENGTH_SHORT).show();
}
@Override public void showRationale() {
Toast.makeText(MainActivity.this, "the reason permission is required",
Toast.LENGTH_SHORT).show();
}
}));
@Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
@NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
quickPermission.quickResult(requestCode, permissions, grantResults);
}