📣 Announcement
This is pre-stable release, please report issues if any. This was long day for me. Changes are indeed small on the code, but provides a lot of impact to the end user. A lot of debouncing was added to the code, so it can cool down the CPU a bit when many stuff have to be executed in short time. The Android Studio profiler also shows nice feedback regarding CPU and RAM usage.
I made the feature "battery was replaced" "alive" as I started it last year and switched to something else, and never actually finished it. Interesting fact is that debouncing fixed some shady bugs that happened sometimes, such as screen flickering on state changing.
✍️ Changelog v2.4.9.2-beta4
Battery health
- Chemistry-aware aging (Li-Po vs Si-Ca curves) (experimental and will run in specific case where app decides it can)
- 12-month health forecast as dashed line on the chart. (Prediction)
- Y-axis auto-scales to your real health range, no wasted 0-25 % zone
- New Settings entry, Battery was replaced on, filters old-pack sessions and marks the date on the chart
- Cold and hot sessions count less, 15-45 °C is the trusted band
- Smarter design-capacity fallback when Android refuses to report it, we had hardcoded value previously, now app tries to estimate it.
Charging
- Time-to-full includes the slow-down phase (last 15-20 %)
- New labels, USB-PD when peak power crosses 15 W, wireless detected on phones that hide it
- Mid-session charge-counter resets no longer corrupt health
- Peak power uses real battery voltage, not 5 V USB fudge
- Series dual-cell health fix (some users saw doubled numbers)
Performance
- Faster cold start,
- Dashboard and Ongoing tiles stop flickering during fast-charge negotiations
- Cycles chart bars now sit centered under day-of-week labels
App Usage
- No longer under-counts on Xiaomi/MIUI doze devices
- Fixed truncated span bug that lost minutes
- Background sampling only runs while charging
Stability
- Many fixes for time-backwards races, lifecycle leaks, ANRs during fast-charge negotiation, overflow guards