Android 關於“設置-)電池-)電池已用時間”

 

 

操作步驟:

1. 進入設置->電池->查看電池已用時間

 

實際結果:

電池已用時間是從開機到當前的時間,而不是拔掉充電器後到當前的時間

電池使用時間累積,是google default的, 但這個會帶來一個嚴重可能存在的問題是,若batterystats.bin有損壞的情況下,就會導致無法開機;

 

因此MTK加瞭一些code,檢查若batterystats.bin有損壞,就會把其刪掉,重新創建新的一個batterystats.bin出來;所以就會看到在重開機後,這個電池使用時間就被重置瞭;

 

所以貴司可以衡量一下:

若要保持電池的使用時間,則後續有可能會出現無法開機的情況;

若要保證不會因為batterystats.bin損壞而無法開機,則每次開機後都重新生成一個新的batterystats.bin,所以重開機後看到的是電池使用時間重置瞭。

 

保持電池使用時間,請按以下方法修改:

 

請參考:

BatteryStatsImpl.java

public BatteryStatsImpl(String filename) {

//若要還原,請註釋下面的代碼=====================

boolean ret = (new File(filename)).delete();

if (!ret) {

Slog.i(TAG, Delete file + filename + fail);

} else {

Slog.i(TAG, File + filename + has been removed);

}

//若要還原,請註釋上面的代碼=====================

mFile = new JournaledFile(new File(filename), new File(filename + .tmp));

mHandler = new MyHandler();

 

發佈留言