千家信息网

Android关于悬浮窗锁屏或截图后消失问题的解决方法

发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,Android关于悬浮窗锁屏或截图后消失问题的解决方法,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。今天我们就说一说在android8.
千家信息网最后更新 2024年11月20日Android关于悬浮窗锁屏或截图后消失问题的解决方法

Android关于悬浮窗锁屏或截图后消失问题的解决方法,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

今天我们就说一说在android8.1锁屏的时候遇到的问题。

问题及解决思路

我们的程序在android8.1下悬浮窗正常使用,但是如果我们这时候锁屏了,或是截取屏幕后,我们的悬浮窗就会自己消失了。

我现在试到的就是这两个,不过我觉得应该是有别的东西在上层挡住了后就会出现这个情况。因为在查代码的时候发现我们的windowsmanage里面的view还是存在的,只不过没有显示出来。

为了不影响使用效果并且可以更简单的解决这个问题,我想了一个方法,就是在windowsmanage每次刷新的时候做一个计数的功能,每多少次刷新后我们删除了view再重新创建。

实现效果

上面的视频可以看到,我们做了个截屏操作后,悬浮窗一会自动消失了,不过很快就又自动显示出来了。

核心代码

实现可移动的悬浮窗效果我们可以从《Android实现可移动的悬浮窗》这个文章里看到代码,我们这里只说解决的这块。

我们首先要把MyWindowManage里面的updaetUsedPercent这个函数改造,在参数后面加了一个boolean的值,用于判断是否要重新建View,如果是的话我们就删除原来的view后再重新addview,如果不用的话直接就是原来的代码更新即可。下图中红框中就是我们新增加的判断部分。

为了防止以前的调用不用更改了,我们建了一个重载方法,这样默认不输入后面的参数时就是不刷新


然后我们就看看在FloatWindow的这个服务里调用这个更新方法的代码

首先上面我们加入了一个updatetimes的int类型变量,然后上面绿色框里面是原先的代码,我们这里就是改造了一下,当updatetimes次数大于10了后我们就执行windowmanage里面的View删除后重新创建,然后把updatetimes重置为0,当小于10的时候就按原来的定时刷新View,然后updatetimes加1.

看完上述内容,你们掌握Android关于悬浮窗锁屏或截图后消失问题的解决方法的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

方法 问题 代码 就是 时候 效果 截图 不用 内容 参数 更多 改造 更新 移动 束手无策 为此 上层 下图 东西 两个 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 免密登陆数据库的配置文件 网络安全知识科普测试 网络安全视频初中生 试述数据库设计的全过程 惠普服务器主板怎么设置网口打开 什么是网络技术转让货源充足 论文的数据库来源包括哪些 大型网站服务器架构与小型不同 软件测试工程师为什么要数据库 sql数据库 实例 软件开发的能做游戏外挂吗 深泽高科技软件开发服务价钱 软件开发大专专业 网络安全的成果和总结 组态王数据库时间段怎么没法添加 常州海航软件开发售后服务 软件开发好学吗17k 我的世界服务器遇到玩家挂机 软件开发公司企业环境 幼儿网络安全知识简报 我的世界僵尸围城服务器推荐 运维服务器 中国中医药临床案例成果数据库 趣游互联网科技有限公司 网络安全入门 新科海 数据库与俄语的关系 软件数据库怎么选择 全国网络安全专业的大学 哈服务器 外卖订餐系统数据库目录
0