使用系统的授权功能
比方我现在申请CAMERA权限
1.在manifest里面添加这个权限
<uses-permission android:name="android.permission.CAMERA"/>
2.检测此权限是否已申请并回调结果
public void requestAllPower() { if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) { if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.CAMERA)) { } else { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CAMERA}, 1); } } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); if (requestCode == 1) { for (int i = 0; i < permissions.length; i++) { if (grantResults[i] == PackageManager.PERMISSION_GRANTED) { Log.i("test_model","权限" + permissions[i] + "申请成功"); Toast.makeText(this, "" + "权限" + permissions[i] + "申请成功", Toast.LENGTH_SHORT).show(); TestPermissionActivity.this.finish(); } else { Log.i("test_model","权限" + permissions[i] + "申请失败"); Toast.makeText(this, "" + "权限" + permissions[i] + "申请失败", Toast.LENGTH_SHORT).show(); TestPermissionActivity.this.finish(); } } } }
3.直接调用requestAllPower()该方法即可