6.0后,全局悬浮窗或者弹窗不显示的解决办法
程序员文章站
2022-05-25 21:39:27
...
在开发项目过程中,接到这样一个需求,当有推送传到app上时,需要弹出一个类似通知栏的悬浮窗来通知用户相关。开发功能进行的很顺利,而且在我用我4.0的测试机测试是功能正常的。
但是当我使用6.0以上的手机进行测试的时候,发现无论如何,都没有得到相应的结果,最后度娘了好久终于找到算是合理的解释。
国内查,所有的新闻统一都说是谷歌有意禁止该功能(默认关闭),且说不会妥协去修改,仅此而已,未找到相关的开发者解决方案。
国外查,尼玛人家说这个android6.0的bug,在6.0.1之后会修复。。。。
先不管原因 解决方法就是去动态申请某个权限
if (!Settings.canDrawOverlays(this)) {
//请求权限
Toast.makeText(TestFloatWinActivity.this, "当前无权限,请授权!", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
Uri.parse("package:" + getPackageName()));
startActivityForResult(intent, OVERLAY_PERMISSION_REQ_CODE);
} else {
//做你的操作
}
下一篇: Python创建或生成列表的操作方法