Android 动态权限获取

权限校验方法


PackageManager packageManager=getPackageManager();
                if(PERMISSION_GRANTED==packageManager.checkPermission("android.permission.WRITE_EXTERNAL_STORAGE","com.actiview.batterymanage")){
                    MyToast.show(MainActivity.this,"写有权限");
                }else {
                    MyToast.show(MainActivity.this,"写无权限");
                }

校验是否有权限,如果没有去获取权限


if (ContextCompat.checkSelfPermission(MainActivity.this,
     "android.permission.WRITE_EXTERNAL_STORAGE")!= PERMISSION_GRANTED) {
        if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this,
                "android.permission.WRITE_EXTERNAL_STORAGE")) {
        } else {
            ActivityCompat.requestPermissions(MainActivity.this,
                    new String[]{"android.permission.WRITE_EXTERNAL_STORAGE",
                            "android.permission.READ_EXTERNAL_STORAGE"}, 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] == PERMISSION_GRANTED) {
                    Toast.makeText(this, "" + "权限" + permissions[i] + "申请成功", Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(this, "" + "权限" + permissions[i] + "申请失败", Toast.LENGTH_SHORT).show();
                }
            }
        }
    }

猜你喜欢

转载自blog.csdn.net/u013108408/article/details/79931074