Android动态权限

2018-06-29  本文已影响0人  无语_ae67

普通权限

在程序运行时系统自动授权

特殊权限

pass

危险权限

有用户自己手动授权

危险权限共有9组,24个权限 危险权限.png

申请危险权限

if (ContextCompat.checkSelfPermission(this,Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED){
//判断权限是否已经授权过了
            ActivityCompat.requestPermissions(this,new String[] {Manifest.permission.CALL_PHONE},1);
            //申请权限
        }else {
            Toast.makeText(this,"dddddddd",Toast.LENGTH_SHORT).show();
        }

调用申请权限的方法后会弹出申请权限的对话框,无论拒绝还是同意,都会将结果返回onRequestPermissionsResult()方法,

 @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        if (requestCode == 1){
            if (permissions.length >0 && grantResults[0] ==PackageManager.PERMISSION_GRANTED){
                Toast.makeText(this,"同意",Toast.LENGTH_SHORT).show();

            }else {
                Toast.makeText(this,"不同意",Toast.LENGTH_SHORT).show();

            }
        }
    }
上一篇下一篇

猜你喜欢

热点阅读