I am benchmarking an app using the batteryhistorian. The result is a chart where every percentile is a "tick".

After I've measured the battery consumption and let the battery drain to half, I would like to be able to save time by making a change and restarting a measurment without having charged the deviced back to full.

Is it a fair approximation to assume that a drop from 85% to 84% is the same as a drop from say 64% to 63% when benchmarking an application?

  • Li Ion battery discharge is not strictly linear, (unlike a capacitor ). This ensures available power is utilised till the end of battery charge

enter image description here

enter image description here

  • Assuming your app is not a heavy power hog, it is reasonable to extraploate discharge. But, since the discharge isn't strictly linear, it would give better results if

    • Battery drop interval is more , say 5 to 10% and not 1% as proposed

    • Battery drop is not measured below 30% of battery ( to avoid greying into non linear portion of curve)

    • Measuring at 1% drop inherently introduces rounding off errors- if your phone has two digit accuracy, anything between 75.90 to 75.99 would show 76% . In the worst case, the error could be doubled (it won't fall to 75% till it goes below 75.90). Which means a 20% error, and that can be reduced to 2% over a 10% drop

    • Avoid measuring when the battery is fully charged to reduce errors. Measure at about 85% for the first reading and around 50% (or higher ) for second reading after tweaking your app

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.