Android6.0(Android M) 悬浮窗被禁用,无权限开启悬浮窗的解决方案

本文介绍了在Android 6.0设备上遇到悬浮窗无法开启的问题及其解决方案。针对谷歌默认关闭悬浮窗权限的情况,提供了两种解决策略:一是系统应用默认权限,二是引导用户手动开启权限。重点讲解了第二种方法,包括在AndroidManifest.xml中添加权限声明,以及在运行时检查和请求权限的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近需要在Android6.0的机子上实现一个悬浮窗的功能,发现6.0之前的机子都能使用悬浮窗,但是唯独6.0版本不行,以下我是查到的相关资料,挺有意思的,顺带说一下:

国内查,所有的新闻统一都说是谷歌有意禁止该功能(默认关闭),且说不会妥协去修改,仅此而已,未找到相关的开发者解决方案。

国外查,尼玛人家说这个android6.0的bug,在6.0.1之后会修复。。。。

WTF,那么问题来了,本猿该信谁。。。。。。。。

Whatever,我要的是解决方案,直奔主题

——————————————————————————我是一条一本正经的分割线————————————————————————————

解决方案有两种:

一是如果你做的是系统应用开发,只要给apk签名,那么默认悬浮窗权限是给予的,显然这种情况不符合大多数开发者的要求。

二是在开启悬浮窗之前,引导用户去开启权限,本博文重点介绍这种方法

权限开启的UI路径是 “ 通用 -- 应用管理 -- 更多 -- 配置应用 --- 在其他应用的上层显示 --- 选择你的APP -- 运行在其他应用的上层显示 ”  >_< 藏得也是够深的!!!


【步骤1】在AndroidManifest.xml中添加悬浮窗的权限

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


【步骤2】Activity的编写如下


package test.floatWin;

import android.content.Intent;
import android.net.Uri;
import android
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值