您好,登錄后才能下訂單哦!
Android 中RxPermissions 的使用方法詳解
以請求拍照、讀取位置權限為例
module的build.gradle:
compile 'com.tbruyelle.rxpermissions2:rxpermissions:0.9.4@aar' compile 'io.reactivex.rxjava2:rxjava:2.0.5'
AndroidManifest.xml:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.CAMERA"/>
源碼:
Button button = (Button) findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { RxPermissions rxPermissions = new RxPermissions((Activity) mContext); rxPermissions.request(Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.CAMERA) .subscribe(new Observer<Boolean>() { @Override public void onSubscribe(Disposable d) { } @Override public void onNext(Boolean aBoolean) { if (aBoolean) { Toast.makeText(mContext, "已獲取權限,可以干想干的咯", Toast.LENGTH_LONG) .show(); } else { //只有用戶拒絕開啟權限,且選了不再提示時,才會走這里,否則會一直請求開啟 Toast.makeText(mContext, "主人,我被禁止啦,去設置權限設置那把我打開喲", Toast.LENGTH_LONG) .show(); } } @Override public void onError(Throwable e) { } @Override public void onComplete() { } }); } });
注意:
必須加 compile 'io.reactivex.rxjava2:rxjava:2.0.5'
如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。