Problem
The battery-health figure in Insights depends on a single, instantaneous capacity reading, which fluctuates between refreshes and can make health look jumpy or off.
getBatteryCapacity() computes chargeCounter / (percent * 10) from one live sample (SystemService.java:274-311), and measured health is currentFullMah / designMah from that one reading (BatteryHealthTracker.java:332-364). Both the current-capacity value and the health % it feeds move with each sample.
Request
Show an averaged measured capacity instead of a single snapshot, with the spread available as small secondary text. For example:
Measured capacity: 4500 mAh
avg of rated capacity (min/max: 4420 / 4580)
Suggested direction
Open questions
- How many samples / what window makes the average trustworthy without lagging real wear?
- Reset the running stats when the design capacity changes?
Problem
The battery-health figure in Insights depends on a single, instantaneous capacity reading, which fluctuates between refreshes and can make health look jumpy or off.
getBatteryCapacity()computeschargeCounter / (percent * 10)from one live sample (SystemService.java:274-311), and measured health iscurrentFullMah / designMahfrom that one reading (BatteryHealthTracker.java:332-364). Both the current-capacity value and the health % it feeds move with each sample.Request
Show an averaged measured capacity instead of a single snapshot, with the spread available as small secondary text. For example:
Suggested direction
Open questions