去掉顶部下拉框中的护眼模式


需求

顶部下拉框中的护眼模式去掉

参考知识点

我们在博客中已经分析了QS、QQS 相关的流程,实践过项目需求
Android12 SystemUI QS面板新增截屏功能

Android12_SystemUI下拉框新增音量控制条
Android系统去掉WIFI模块

修改QS/QQS 必须具备一些SystemUI 基本知识,了解了基本知识修改对应内容很简单了

功能实现

参考 上面参考知识点,只需要在SystemUI 的配置文件values/config.xml 中实现
路径:

xref: /frameworks/base/packages/SystemUI/res/values/config.xml

在线源码位置:

http://xrefandroid.com/android-12.0.0_r34/xref/frameworks/base/packages/SystemUI/res/values/config.xml

修改具体源码如下,去掉配置中的night 即可:
在这里插入图片描述

 <!-- Tiles native to System UI. Order should match "quick_settings_tiles_default" -->
109     <string name="quick_settings_tiles_stock" translatable="false">
110         internet,bt,flashlight,dnd,alarm,airplane,controls,wallet,rotation,battery,cast,screenrecord,mictoggle,cameratoggle,location,hotspot,inversion,saver,dark,work,night,reverse,reduce_brightness
111     </string>

116     <!-- The tiles to display in QuickSettings in retail mode -->
117     <string name="quick_settings_tiles_retail_mode" translatable="false">
118         night,dark,dnd,flashlight,rotation,location
119     </string>

问题点

理论上经过上面的功能实现,我们已经完成了需求。但是实际会遇到问题了。

遇到问题点
顶部下拉框中的护眼模式已经去掉了,但是去设置打开了护眼模式或者用代码打开了护眼模式后,顶部下拉框的护眼模式重新显示出来了,关闭护眼模式后 顶部下拉框中的护眼模式模块依然显示

问题点修改文件

packages/apps/SystemUI/src/com/android/systemui/qs/tileimpl/QSFactoryImpl.java

具体修改点

QS快捷面板创建工厂类中,去掉护眼模式的创建

QSFactoryImpl 类,createTileInternal 方法中,屏蔽代码:

  /*case "night":
                return mNightDisplayTileProvider.get();*/

我们在创建QSTitle 地方,不去创建就完成了需求,甚至我们根本不需要去掉配置文件中的具体配置。

疑问:去掉配置中的配置,为啥硬编码打开了护眼模式还是会显示,这个代码逻辑自行查阅,暂不分析。

总结

  • 如果去掉某个QSTitle:去掉配置文件选项、去掉QSTitle 工厂QSFactoryImpl里面创建QSTitle 的地方
  • 如果创建某个QSTitle:配置文件里面添加,QSTitle 工厂QSFactoryImpl 里面新增创建
  • 疑难杂症,当前护眼模式地方,明明配置文件已经去掉了,为啥打开后还会在QS面板中显示,所以在QSTitle 里面创建的地方同步去掉。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ItJavawfc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值