Android 中RxPermissions 的使用

2020-04-02  本文已影响0人  茈男孑丶猪尾草

Android 中RxPermissions 的使用方法详解

以请求拍照、读取位置权限为例

第一步,在module的build.gradle中的

dependencies {

//  RxPermissions 的使用方法详解

    implementation 'com.github.tbruyelle:rxpermissions:0.10.2'

    implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'

    implementation 'io.reactivex.rxjava2:rxjava:2.2.4'

}

还有在最外面那个文件夹下面的build.gradle 加入

allprojects {

    repositories {

        maven { url 'https://jitpack.io' }

    }

}

第二步,在AndroidManifest.xml中添加自己需要用到的权限:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

<uses-permission android:name="android.permission.CAMERA"/>

第三步,activity中使用以及注意事项

1,创建 RxPermissions 实例

RxPermissions rxPermissions = new RxPermissions(this);

2、RxPermissions 里面的方法具体实现

public static final String[] permissionsGroup =new String[]{

Manifest.permission.ACCESS_FINE_LOCATION,

        Manifest.permission.CAMERA};

rxPermissions.requestEach(permissionsGroup)

.subscribe(new Observer() {

@Override

            public void onSubscribe(Disposable d) {

}

@Override

            public void onNext(Permission permission) {

                    //这里判断用户是否同意了该权限,如:

                    if(permission.name.equals(Manifest.permission.CAMERA)){

                         //已获取权限,可以干想干的咯

                      }else{

                         //主人,我被禁止啦,去设置权限设置那把我打开哟

                      }

}

@Override

            public void onError(Throwable e) {

}

@Override

            public void onComplete() {

}

});

上一篇 下一篇

猜你喜欢

热点阅读