Recommend a very easy to use Android 6.0 permission application tool

Quote to click to open link

How to use androidStudio:

1. In the project's root gradle.build

allprojects { 
    repositories { 
        maven {url " https://jitpack.io " } // Add this sentence 
    } 
}

2. In build.gradle under lib project

compile 'com.github.yxping:EasyPermissionUtil:v0.1.0'

PermissionUtil.java

/ ** 
* Check whether a single permission is allowed, and no permission will be applied. (Note: when the application is installed for the first time, there will be no rational value, and the return is denied at this time) 
* / public int checkSinglePermission ( String permission); / ** * Check the status of multiple permissions and will not apply for permission. (Note: when the application is installed for the first time, there will be no rational value, and the return is denied at this time) * / public the Map < String , List < PermissionInfo > > checkMultiPermissions ( String . .. permissions); / ** * request access method * / public void request ( @NonNull String [] permissions, PermissionResultCallBack callBack); public 
 



 
 



 
  

 void request ( @NonNull  String [] permissions, PermissionOriginResultCallBack callBack); / ** * Used to request permission in fragment * / public void request ( Fragment fragment, String [] permissions, PermissionResultCallBack callBack); public void request ( Fragment fragment, String [] permissions, PermissionOriginResultCallBack callBack); / ** * Used to request permission in activity * / public void request ( Activity activity, String



 
 

 



 
 [] permissions, PermissionResultCallBack callBack);

public void request(Activity activity, String[] permissions, PermissionOriginResultCallBack callBack);


It is very convenient to apply for permission, one way to get it:

PermissionUtil.getInstance().request(getActivity(), new String[]{Manifest.permission.READ_PHONE_STATE,
                        Manifest.permission.ACCESS_COARSE_LOCATION,Manifest.permission.ACCESS_FINE_LOCATION,
                        Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE},
                new PermissionResultCallBack() {
                    @Override
                    public void onPermissionGranted() {
                        // 当所有权限的申请被用户同意之后,该方法会被调用
                        
                    }


                    @Override
                    public void onPermissionGranted(String... strings) {
                        // 当所有权限的申请被用户同意之后,该方法会被调用
                    }


                    @Override
                    public void onPermissionDenied(String... permissions) {
                        Toast.makeText(getActivity(),"部分权限被禁止需要手动开启",Toast.LENGTH_SHORT).show();
                        // 当权限申请中的某一个或多个权限,被用户曾经否定了,并确认了不再提醒时,也就是权限的申请窗口不能再弹出时,该方法将会被调用
                    }


                    @Override
                    public void onRationalShow(String... permissions) {
                        Toast.makeText(getContext(),"部分权限被禁止需要手动开启",Toast.LENGTH_SHORT).show();
                        // 当权限申请中的某一个或多个权限,被用户否定了,但没有确认不再提醒时,也就是权限窗口申请时,但被否定了之后,该方法将会被调用.
                    }

                });


发布了29 篇原创文章 · 获赞 40 · 访问量 3万+

Guess you like

Origin blog.csdn.net/xiyunmengyuan/article/details/80434344