项目作者: Kishanjvaghela

项目描述 :
Ask Permission - Simple RunTime permission manager
高级语言: Java
项目地址: git://github.com/Kishanjvaghela/Ask-Permission.git
创建时间: 2016-10-14T13:24:15Z
项目社区:https://github.com/Kishanjvaghela/Ask-Permission

开源协议:

下载


Ask Permission

https://kishanjvaghela.github.io/Ask-Permission/

Download
Android Arsenal
Stories in Ready

Simple RunTime permission manager

How to use

Add url to your gradle file

  1. compile 'com.kishan.askpermission:askpermission:1.0.3'

If you got conflicting in support library then

  1. compile('com.kishan.askpermission:askpermission:1.0.3', {
  2. exclude group: 'com.android.support'
  3. })

Now you can Ask for permission

  1. new AskPermission.Builder(this)
  2. .setPermissions(Manifest.permission.READ_CONTACTS, Manifest.permission.WRITE_EXTERNAL_STORAGE)
  3. .setCallback(/* PermissionCallback */)
  4. .setErrorCallback(/* ErrorCallback */)
  5. .request(/* Request Code */);

Here you have two callback

PermissionCallback

  1. @Override
  2. public void onPermissionsGranted(int requestCode) {
  3. // your code
  4. }
  5. @Override
  6. public void onPermissionsDenied(int requestCode) {
  7. // your code
  8. }

ErrorCallback

Example

  1. @Override
  2. public void onShowRationalDialog(PermissionInterface permissionInterface, int requestCode) {
  3. // Alert user by Dialog or any other layout that you want.
  4. // When user press OK you must need to call below method.
  5. permissionInterface.onDialogShown();
  6. }
  7. @Override
  8. public void onShowSettings(PermissionInterface permissionInterface, int requestCode) {
  9. // Alert user by Dialog or any other layout that you want.
  10. // When user press OK you must need to call below method.
  11. // It will open setting screen.
  12. permissionInterface.onSettingsShown();
  13. }

This Library support Activity,Fragment and SupportFragment.

  1. new AskPermission.Builder(/* android.app.Activity */)
  2. new AskPermission.Builder(/* android.app.Fragment */)
  3. new AskPermission.Builder(/* android.support.v4.app.Fragment */)