【Android开发】Android6.0请求权限方式

记录一下最普通的动态请求权限的方法:

private int requestCode == 123;
 //判断当前系统的版本
 if(Build.VERSION.SDK_INT >= 23){
            int checkWriteStoragePermission = ContextCompat.checkSelfPermission(activity,
                    Manifest.permission.READ_PHONE_STATE);
            //如果没有被授予
            if(checkWriteStoragePermission != PackageManager.PERMISSION_GRANTED){
                //请求权限,此处可以同时申请多个权限
                ActivityCompat.requestPermissions(activity, new String[]{Manifest.permission.READ_PHONE_STATE},  requestCode);
                return;
            }else{
                // do something....
            }
        }else {
            // do something....
        }
    @Override
    public void onRequestPermissionsResult(int requestCode, final String[] permissions, int[] grantResults) {
        switch (requestCode) {
             case requestCode :
                if(grantResults.length > 0 && 
                    grantResults[0] == PackageManager.PERMISSION_GRANTED){
                      // do something....
                }else{
                    Toast.makeText(activity, "获取权限失败!", Toast.LENGTH_SHORT).show();
                }
                break;
        }
    }
原文地址:https://www.cnblogs.com/neo-java/p/10184958.html