在Android6.0以后,我们申请权限的时候最容易出现的问题就是在AndroidManifest 文件中申请权限后,有一些权限依然无法开启权限,导致程序崩溃,需要手动去开启。
//6.0权限申请
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
RxPermissions rxPermissions = new RxPermissions(this);
rxPermissions
.requestEach(
Manifest.permission.CAMERA,
Manifest.permission.INTERNET,
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.KILL_BACKGROUND_PROCESSES,
Manifest.permission.READ_CONTACTS,
Manifest.permission.READ_PHONE_STATE,
Manifest.permission.ACCESS_FINE_LOCATION)
//在这里添加你需要用到的权限
.subscribe(permission -> {
if (permission.granted) {
// `permission.name` is granted !
} else if (permission.shouldShowRequestPermissionRationale) {
// Denied permission without ask never again
} else {
// Denied permission with ask never again
// Need to go to the settings
ToastUtils.showShortToast(getString(R.string.error_grant));
}
});
}
完美解决6.0以后权限申请遇到的问题。