launcher3 使用forceReload 刷新界面闪烁

来源:互联网 发布:页游多开软件 编辑:程序博客网 时间:2024/06/06 08:53

起因

处理桌面快捷方式的时候 LauncherModel中使用forceReload方法会刷新整个workspace导致界面闪烁

解决方法

1.使用广播更新桌面快捷方式。

类似于安装新的apk后添加快捷方式,考虑到位置因素,不可行。

2.刷新桌面单个快捷方式。

workspace中发现updatePackageBadge方法,看名字就是它了。

刷新流程

LauncherModel中接收到广播后调用 updatePackageBadge方法,会最终调用workspace中的 updatePackageBadge方法。

所以只需要在 workspace中拿到快捷方式需要更新的bitmap即可,或者在workspace中对bitmap处理显示,所以需要拿到最初的bitmap进行处理。

最初的bitmap当然是在IconCache中cacheLocked拿到。至此问题解决。

阅读全文
0 0
原创粉丝点击