前几天看了一下阿里云写的android6.0动态适配,觉得写的很好,记录一下。
录制所需要的权限
private static final String[] PERMISSIONS = new String[]{ Manifest.permission.CAMERA, Manifest.permission.RECORD_AUDIO, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE};检测是否有录制的相关权限
@TargetApi(Build.VERSION_CODES.M) private void requestPermission(){ List<String> p = new ArrayList<>(); for(String permission :PERMISSIONS){ if(ContextCompat.checkSelfPermission(this,permission) != PackageManager.PERMISSION_GRANTED){ p.add(permission); } } if(p.size() > 0){ requestPermissions(p.toArray(new String[p.size()]),PERMISSION_CODES); } }申请权限的结果
@Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { switch (requestCode){ case PERMISSION_CODES: if(grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_DENIED){ //如果没有权限 可以跳转到设置界面让用户手动设置权限
}else { //有权限 进入下一步操作 } break; } }