您的位置:首页 > 移动开发 > Android开发

Android 6.0 权限适配(PermissionsDipatcher)

2017-06-03 15:54 337 查看
目前主流的6.0权限适配框架有PermissionDipatcher,RxPermission,EasyPermission,今天试用了一下PermissionDipatcher,感觉还不错,特此记录.

PermissionDipatcher

首先在AS下载插件,打开file->setting->plugin,在搜索框输入PermissionDipatcher, 点击下载重启即可



然后在要添加权限检查的activity或者是fragment中右击->Generate…->add PermissionDipatcher Dependencies添加依赖



在app下的build.grade下就多了两行

compile(‘com.github.hotchemi:permissionsdispatcher:2.4.0’) { exclude module: ‘support-v13’ }

annotationProcessor ‘com.github.hotchemi:permissionsdispatcher-processor:2.4.0’

当然这部分手动添加依赖也是没有问题的.再编译一下就ok了.

->接下来右击选择Generate…->



添加Camera和CallPhone权限, @NeedsPermission表示成功授权的方法回调,@OnPermissionDenied表示失败的回调,一般只需要这两个方法就足够用了



点击确定,自动生成代码



MainActivityPermissionsDispatcher.onPermissionGrantedWithCheck(this); //表示主动调起授权操作,MainActivityPermissionsDispatcher这个类需要编译后才会自动生成.

当然不能忘记在manifest注册权限,不然一样是失败哦



这样就ok啦,targetSdkVersion 当然要>=23才有适配android6.0,别忘了哦

注意

当你选中两个权限的话,生成的方法就必须两个权限一起请求,只有当都请求成功了才能触发成功回调,其它情况都是失败,看看github上大牛怎么说的吧



重点看这句 we recommend to separate methods per each permission.

也就是说尽量用一个方法来标注一个权限,将权限申请分离开来

话不多说.特此留念
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android