美文网首页
运行时权限PermissionDispatcher 的使用

运行时权限PermissionDispatcher 的使用

作者: 若兮生生 | 来源:发表于2017-07-20 11:54 被阅读84次

    1.Android studio 引入 需要使用PermissionsDispatcher,需要在project的 build.gradle中添加

    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    

    2.然后在app module中的build.gradle中添加:(必须在app module中添加)

        apply plugin: 'android-apt'
        compile("com.github.hotchemi:permissionsdispatcher:2.4.0") {
            exclude module: "support-v13"
        }
        apt "com.github.hotchemi:permissionsdispatcher-processor:2.4.0"
    

    3.主要有下面5个注解

    @RuntimePermissions 标记需要运行时判断的类
    @NeedsPermission 标记需要检查权限的方法
    @OnShowRationale 授权提示回调
    @OnPermissionDenied 授权被拒绝回调
    @OnNeverAskAgain 授权不再拒绝不再显示回调

    a.@RuntimePermissions 在Activity或者Fragment中需要添加,来处理权限的问题

    @RuntimePermissions
    public class MainActivity extends AppCompatActivity {
    

    b.将需要权限的操作定义在一个方法里,并用 @NeedsPermission(Manifest.permission.CAMERA)表明需要的权限(可以是多个)

        @NeedsPermission(Manifest.permission.READ_EXTERNAL_STORAGE)
        void showRead(){
            Log.e(TAG, "showLocation: "+"obtain permission " );
        }
    

    c.编译一下,就会生成【当前类名+PermissionsDispatcher】的类,也会生成用@NeedsPermission标记的方法【标记方法+WithCheck】。

    d.在需要的地方调用生成的方法

    MainActivityPermissionsDispatcher.showReadWithCheck(this);
    

    相关文章

      网友评论

          本文标题:运行时权限PermissionDispatcher 的使用

          本文链接:https://www.haomeiwen.com/subject/zlpdkxtx.html