TYPE_APPLICATION_OVERLAY 悬浮窗

 

在Android 6.0(API级别23)及以上版本,为了保证用户隐私和安全,如果应用想要创建TYPE_APPLICATION_OVERLAY类型的窗口,必须动态请求SYSTEM_ALERT_WINDOW权限。这个权限允许应用显示在其他应用上面,如果不授权,应用将无法创建或显示悬浮窗口。

申请该权限的示例代码如下:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    if (!Settings.canDrawOverlays(this)) {
        Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
                Uri.parse("package:" + getPackageName()));
        startActivityForResult(intent, OVERLAY_PERMISSION_REQ_CODE);
    } else {
        // 已经有权限,可以创建 TYPE_APPLICATION_OVERLAY 类型的窗口
    }
}

当用户同意授权后,应用才能成功创建并显示TYPE_APPLICATION_OVERLAY类型的窗口,从而实现在任何界面(包括锁屏界面)上显示悬浮窗口的效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值