Android 中RxPermissions 的使用方法詳解
更新時間:2017年10月24日 09:48:13 作者:Adam289
這篇文章主要介紹了Android 中RxPermissions 的使用方法詳解的相關資料,希望通過本文能幫助到大家,需要的朋友可以參考下
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'
如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
Android簽名機制介紹:生成keystore、簽名、查看簽名信息等方法
這篇文章主要介紹了Android簽名機制介紹:生成keystore、簽名、查看簽名信息等方法,本文講解了升級App、權限檢查、生成keystore、對apk進行簽名、查看簽名信息等內容,需要的朋友可以參考下2015-04-04Android中的SpannableString與SpannableStringBuilder詳解
這篇文章主要給大家介紹了關于Android中SpannableString與SpannableStringBuilder的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。2017-10-10Intent傳遞對象之Serializable和Parcelable的區(qū)別
Intent在不同的組件中傳遞對象數據的應用非常普遍,大家都知道在intent傳遞對象的方法有兩種:1、實現Serializable接口、2、實現Parcelable接口,接下來通過本文給大家介紹Intent傳遞對象之Serializable和Parcelable的區(qū)別,感興趣的朋友一起學習吧2016-01-01