前言
每次在刷完类原生进行探索的时候,总会遇到一些奇奇怪怪的问题,这次的主角是 EvolutionX (Android 14),一般来说,在类原生下使用默认的pixel启动器,开关省电模式会改变壁纸亮度(谷歌在代码里写的是dim
),本人喜欢常开省电模式,但是总有遇到bug的时候,不知道是不是之前使用过克隆应用(用了工作资料(Work Profile)来克隆应用)的原因,在探索完这个功能删掉全部克隆应用的时候,发现无论怎么开关省电模式壁纸都变不会去了( 由于这是个小Bug,一直没有去管它,到后面想换新壁纸的时候实在是忍不了了,于是就开始 Google 问题的原因,其中一篇谷歌论坛的帖子给了我线索:
https://support.google.com/pixelphone/thread/239722789?hl=en&msgid=255858432
我尝试去通过命令和修改 /data/system/users/0/wallpaper.xml
修改数值,但是都没有效果:
|
|
开始
于是去问了可爱的五一喜大师,此时,Bug的Wheel开始倒转
首先需要 dumpsys wallpaper
看一下是谁设置的 dim
值:
可以看到是这个可恶的1010550
,通过mt管理器看到是 Extreme Power Saver (超级省电,是个系统应用),然后五一喜让我su进去重新设置值,但是这个用户没权限:
然后五一喜让我试试吧Extreme Power Saver装到用户10,最后发现它根本不存在
|
|
然后我就在思考用户10到底是谁,最后回想起来的只有克隆应用(工作资料)
找个应用克隆之后发现 Extreme Power Saver 是预装到用户10的,然后再次尝试修改 dim
值:
|
|
成功了!!!!!
原因
代码里面根本不存在 prune 的逻辑,用户或者 包被删掉了这个设置也不会清除 比如说逻辑是不同 app (uid) 可以设置 dim ,最终取最大值
总结
以后再也不乱玩work profile了(x
再次感谢可爱的五一喜大师 :)
以后类似的问题都可以通过这个思路去尝试解决:
遇到Bug → 找到相关api → 看日志/dumpsys等找到是谁干的 → 手动修复/修改
最后附上壁纸: https://www.bilibili.com/video/BV1dfr7YDEJP?p=1&unique_k=2333