Android6.0以上版本动态权限申请
时间:2017年3月8日
1.在AndroidManifest.xml文件中添加需要的权限;
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.RECORD_AUDIO"/>
2.检查权限是否被赋予;
private final int REQUEST_CODE = 0x11;
private static final String[] permissions = new String[]{
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.RECORD_AUDIO
}; private void checkPermission() {
if (Build.VERSION.SDK_INT >= 23) {
ActivityCompat.requestPermissions(this, permissions, REQUEST_CODE);
}
}
3.处理请求权限的响应。
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
if (requestCode == REQUEST_CODE) {
for (int i = 0; i < permissions.length; i++) {
if (grantResults[i] == PackageManager.PERMISSION_GRANTED) {
Log.d("AppActivity", "onRequestPermissionsResult: 权限已经允许");
} else {
Log.d("AppActivity", "onRequestPermissionsResult: 权限已经禁止");
}
}
} else {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
}
}