Android 悬浮窗权限校验

简介: 原文:Android 悬浮窗权限校验 悬浮窗权限: 权限检验和请求: //检查是否已经授予权限,大于6.
原文: Android 悬浮窗权限校验

悬浮窗权限:

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

权限检验和请求:


            //检查是否已经授予权限,大于6.0的系统适用,小于6.0系统默认打开,无需理会

            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M&&!Settings.canDrawOverlays(this)) {
                //没有权限,需要申请权限,因为是打开一个授权页面,所以拿不到返回状态的,所以建议是在onResume方法中从新执行一次校验
                Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION);
                intent.setData(Uri.parse("package:" + getPackageName()));
                startActivityForResult(intent, 100);
            }else{
                //已经有权限,可以直接显示悬浮窗
            }
        

其他注意问题:

        //因为部分type在部分系统中已经废弃,懒得看文档,下面是我亲测是兼容7.0和8.0系统的方法

        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
            wmParams.type = WindowManager.LayoutParams.TYPE_SYSTEM_ALERT;
        } else {
            wmParams.type = WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY;
        }

 

目录
相关文章
|
19天前
|
API Android开发 容器
33. 【Android教程】悬浮窗:PopupWindow
33. 【Android教程】悬浮窗:PopupWindow
12 2
|
1月前
|
Java Shell Android开发
android 权限申请
android 权限申请
49 5
|
1月前
|
存储 Java API
Android系统 文件访问权限笔记
Android系统 文件访问权限笔记
170 1
|
1月前
|
存储 缓存 安全
Android系统 应用存储路径与权限
Android系统 应用存储路径与权限
51 0
Android系统 应用存储路径与权限
|
1月前
|
XML API 数据库
Android权限
Android权限 【5月更文挑战第3天】
30 0
|
1月前
|
Android开发 开发者
Android打开开发者权限
Android打开开发者权限
22 0
|
1月前
|
Android开发
Android 9.0中sdcard 的权限和挂载问题
Android 9.0中sdcard 的权限和挂载问题
18 0
|
1月前
|
Android开发
Android修改默认system/bin/下可执行程序拥有者和权限,使用实例,只有root和系统app权限才能执行某个命令。
Android修改默认system/bin/下可执行程序拥有者和权限,使用实例,只有root和系统app权限才能执行某个命令。 【5月更文挑战第2天】
34 0
|
1月前
|
Android开发
android 12 U盘 /mnt/media_rw 下读取文件异常 没有权限
android 12 U盘 /mnt/media_rw 下读取文件异常 没有权限
75 0
|
1月前
|
XML Android开发 数据安全/隐私保护
android 11后文件读写访问权限申请
android 11后文件读写访问权限申请
39 0