运行时权限的申请

利用框架:rxpermissions2内部已经做了qpi的判断,不需要再进行判断

 implementation 'com.tbruyelle.rxpermissions2:rxpermissions:0.9.3@aar'
 //下边两个需要一块添加
 implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.16'

使用:在需要的地方用下面代码申请就可以

  new RxPermissions(this).requestEach(Manifest.permission.ACCESS_COARSE_LOCATION,
                Manifest.permission.WRITE_EXTERNAL_STORAGE)
                .subscribe(new io.reactivex.functions.Consumer<Permission>() {
                    @Override
                    public void accept(Permission permission) throws Exception {
                        if (permission.granted) {
                         // 用户已经同意该权限
                            Log.e("xnm", "1");
                        } else if (permission.shouldShowRequestPermissionRationale) {
                          // 用户拒绝了该权限,那么下次再次启动时,还会提示请求权限的对话框
                            Log.e("xnm", "2");
                        } else {
                          // 用户拒绝了该权限,并且选中『不再询问』
                            Log.e("xnm", "3");
                        }
                    }
                });

猜你喜欢

转载自blog.csdn.net/qq_38287890/article/details/88964367