【Android systemUI】状态栏充电图标问题

【PlatForm】:Android 8.1

【Description】:充电到100%后状态栏仍有闪电图标,如图

[QUESTION] 

如何让充电完成后状态栏电量图标上不显示闪电标志?

[ANSWER] 

这个是google原生设计。google 原生设计为只要是usb插入状态,则会在状态栏电量图标上显示闪电标志。如果期望充电完成后状态栏电量图标上不显示这个闪电标志,可按照下面的方式修改:

定位到:frameworks/base/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java的draw方法,作如下修改:

public void draw(Canvas c) { 
… 
    - if (tracker.plugged) { 
    + if (tracker.plugged && level < 100) { 
        … 
      } 
… 
}

以上是较早Android版本做法,而Android 8.1中在:

frameworks/base/packages/SettingsLibs/src/com/android/systemui/graph/BatteryMeterDrawableBase.java,修改如下:

@override

public void draw(Canvas c) {
    ......
    - if(mCharging){
    + if(mCharging && level < 100){ //将条件改为充电且电量水平低于100%时
        //此处为画闪电图标的代码
        ......
    }
}

猜你喜欢

转载自blog.csdn.net/qq_33491566/article/details/81943914