Android6.0以后的动态申请权限
由于考虑到安全问题,安卓6.0以后,有些权限是需要动态申请的:
if(ContextCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE)
								!= PackageManager.PERMISSION_GRANTED)
                ActivityCompat.requestPermissions(this,
                	new String[]{Manifest.permission.READ_PHONE_STATE},1);
首先要判断是否获取过该权限避免重复获取。然后再申请,如果需要得到申请权限的结果:

这是运行结果的两种情况,所以我们只需要判断结果是-1还是0 就行
@Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        switch (requestCode){
            case 1:
                if(grantResults[0] == 0)
                //成功
                else
                //失败
        }
    }
注意,每一个onRequestPermissionsResult使用前提是requestPermissions被调用了。
                    
                
                
            
        
浙公网安备 33010602011771号