拔电池掉电后重新开机,电池使用情况界面已用多长时间数据出现负数

 原因:拔掉电池后会导致Battery history的一些数据丢失或者不准确,所以最后算得的“最后使用时间 mEndWallTime” 小与 “开始使用时间 mStartWallTime”,那么得到的 “电池持续时间”就会小于0.

此问题是Google 原生的bug,提供解决方案如下:

BatteryHistoryChart.java line 1102 添加 mEndWallTime > mStartWallTime 的判断:

if (mTimeLabels.size() < 2 && mEndWallTime > mStartWallTime) { // Add mEndWallTime > mStartWallTime judgment
// If there are fewer than 2 time labels, then they are useless. Just
// show an axis label giving the entire duration.
mDurationString = Formatter.formatShortElapsedTime(getContext(),
mEndWallTime - mStartWallTime);
mDurationStringWidth = (int)mTextPaint.measureText(mDurationString);
if (DEBUG)
Log.d(TAG, "mStartWallTime: " + mStartWallTime
+ " mEndWallTime: " + mEndWallTime);
} else {
mDurationString = null;
mDurationStringWidth = 0;
}
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值