Android11 动态权限申请

1、单个权限检查及申请

复制代码
private void checkSinglePermission(){
        // 在需要的地方,如Activity中
        if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE)
                != PackageManager.PERMISSION_GRANTED) {
            ActivityCompat.requestPermissions(this,
                    new String[]{Manifest.permission.READ_PHONE_STATE},
                    1001);
        }
    }

2、多个权限检查及申请

复制代码
private String[] mPermissions = new String[] {
            Manifest.permission.CAMERA,
            Manifest.permission.ACCESS_FINE_LOCATION
};
private boolean checkMorePermission(){
        for (String permission : mPermissions) {
            if (ContextCompat.checkSelfPermission(this, permission) !=             
                   PackageManager.PERMISSION_GRANTED) {
                return false;
            }
        }
        return true;
}
相关推荐
网安Ruler7 分钟前
安卓逆向入门到入狱学习2
android·学习
Jomurphys11 分钟前
Compose 组件 - 流式布局 FlowLayout(FlowColumn、FlowRow)
android·compose
帅次18 分钟前
Navigation Compose:NavHost、NavController 与参数
android·kotlin·gradle·android jetpack·compose
程序员陆业聪1 小时前
架构哲学与工程化:从开发体验到CI/CD的全维度对比|跨平台框架深度对决(三)
android
程序员陆业聪1 小时前
Android网络全链路拆解:一次HTTP请求背后的性能陷阱
android
程序员陆业聪1 小时前
渲染引擎与性能拆解:自绘vs原生渲染vs Bridge的终极对决|跨平台框架深度对决②
android
程序员陆业聪8 小时前
技术选型决策树:什么团队、什么项目该选什么框架 | 跨平台框架深度对决(4)
android
星辰徐哥10 小时前
Rust异步测试与调试的实践指南
android·java·rust
星河耀银海10 小时前
C++ 运算符重载:自定义类型的运算扩展
android·java·c++
阿巴斯甜10 小时前
Activity 之间大量数据传递有哪些方案?
android