首页 > 解决方案 > Android:SYSTEM_ALERT_WINDOW 权限保护级别

问题描述

public static final String SYSTEM_ALERT_WINDOW

允许应用使用类型创建窗口WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY,显示在所有其他应用之上。很少有应用程序应该使用此权限;这些窗口旨在与用户进行系统级交互。

注意:如果应用针对 API 级别 23 或更高级别,应用用户必须通过权限管理屏幕明确授予应用此权限。该应用程序通过发送带有 action 的意图来请求用户的批准Settings.ACTION_MANAGE_OVERLAY_PERMISSION。应用可以通过调用 Settings.canDrawOverlays() 来检查它是否有这个权限。

保护级别:签名|预装|appop|pre23|开发

常量值:“android.permission.SYSTEM_ALERT_WINDOW”

https://developer.android.com/reference/android/Manifest.permission.html#SYSTEM_ALERT_WINDOW

保护级别:签名|预装|appop|pre23|开发

1)SYSTEM_ALERT_WINDOW的保护级别是签名,但是权限被授予使用不同证书签名的普通应用程序。是否因为用户明确授予它,签名在这里变得无效?

2) android 中的|preinstalled|appop|pre23|development 保护级别是什么?

谢谢

标签: androidandroid-permissions

解决方案


预装意味着系统应用程序,从 API 级别 23 保护级别系统开始被弃用,预装和特权占据前列。如果您的应用程序是预安装的,它将能够行使此权限。如果您的应用程序具有平台签名,则可以,或者您的应用程序具有系统可以识别的证书


推荐阅读