社区讨论LinuxDo 最新
CC帮我解决了一个困扰很久的小问题
如图所示,ColorOS 手机有一个省电设置:「同时开启暗色模式」。 但有个很莫名其妙的问题:我明明关掉了这个开关,可一开省电模式,还是会强制开启暗色模式。而且这时候我还没办法手动把暗色关掉。 之前我的解决办法是在设置里恢复默认设置。这样确实能好,但我的设置就全乱套了,得花大把时间精力一项项调回来。 最要命的是,没过多久问题又回来了。我不知道是云同步给恢复的,还是别的什么原因。而且我也没看到设置有云同步,只有设置备份,可我压根没备份过啊。 于是今天突发奇想,让 CC 帮我研究一下。我给他连上了 ADB,想看看他能…
内容摘要
作者:#Sloane
板块:#开发调优
如图所示,ColorOS 手机有一个省电设置:「同时开启暗色模式」。
但有个很莫名其妙的问题:我明明关掉了这个开关,可一开省电模式,还是会强制开启暗色模式。而且这时候我还没办法手动把暗色关掉。
之前我的解决办法是在设置里恢复默认设置。这样确实能好,但我的设置就全乱套了,得花大把时间精力一项项调回来。
最要命的是,没过多久问题又回来了。我不知道是云同步给恢复的,还是别的什么原因。而且我也没看到设置有云同步,只有设置备份,可我压根没备份过啊。
于是今天突发奇想,让 CC 帮我研究一下。我给他连上了 ADB,想看看他能不能读到我手机里的这些设置。没想到他真的读到了。
原来是这么回事
开关确实是关的,我没记错。问题在于 Android 原生的省电模式本身就会强制开深色,OPPO 那个开关只管得了自己那一层,管不到底下这条。所以关了开关也没用,省电时手动也关不掉,一关省电又自动恢复。
跟云同步一点关系都没有。
排查细节
CC 先把手机里两千多项设置全导了出来,找到那个开关:power_save_auto_darkmode_switch = 0,确实是关的。
接着翻 Android 自带的省电策略,里面藏着一行:
enable_night_mode=true
为了实锤,CC 让我开关一次省电,同时抓系统日志。省电一开,日志里立刻跳出 uimode val=33(33 就是深色),而我自己的深色设置全程都是「关」,一次都没被改过。
怎么修
一条 ADB 命令,告诉系统「省电的时候别碰深色」,其他省电功能照常。改完我连着开关了三次省电,屏幕稳稳地亮着。不用 root,不用恢复出厂,也不用再花半天重新调设置了。
命令 & 撤销
修复:
adb shell settings put global battery_saver_constants enable_night_mode=false
撤销:
adb shell settings delete global battery_saver_constants
两个小坑
用无线调试,别插线。插线会被
资讯来源
LinuxDo