运行时权限PermissionDispatcher 的使用

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);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容