Why does my phone's Battery Level make a huge jump when I power off then on?


AC Question

The battery level percentage on my Android phone (ZTE Obsidian Z820) is wildly inaccurate. It appears to decrease very fast (which people would normally assume is caused by either a failing battery or a power-hungry app) but it jumps back up to a high level when I power off the phone and then power it back on. (Without connecting the charger.) For example, it's jumped from 1% before powering off to approximately 60% afterward. I've taken screenshots of the Settings/Battery screen that show such jumps, but I don't yet see how to attach an image to this question. Some of the screenshots also show usage percentages greater tha 100% for the Screen process or the Phone Idle process, and I presume it should be impossible for a process to use more than 100%.

Once after the level had fallen to 1%; I powered my phone off and on (which made the level jump) and then played videos for two hours. This proved the battery still had a lot of charge remaining even though the battery level had indicated 1%.

I know the battery level can become more and more inaccurate over time, which is why some people recommend calibrating the level (by performing deep discharge followed by full charge). But I don't see how calibration error could explain the huge jump after power off/on. Also, I tried the calibration procedure and it didn't make a difference.

To rule out the possibility that my battery is failing, I tried replacing it with the battery from my brother's Obsidian, which has almost never been used and is almost always powered off. Using his battery, the battery level still behaved similarly: wildly inaccurate, appearing to drain fast but jumping after a power off/on.

If anyone knows how to make the battery level behave reasonably, please post the procedure!

You can quickly test whether your own device has the problem: When the battery level appears low, instead of immediately connecting the charger, instead power the phone off and then on and see whether the battery level increased. (It needs to be a power off then on. Simply rebooting the phone won't make the level jump.)