Android may soon notify you when your phone's battery needs to be replaced.

Android phones are receiving software upgrades for longer than ever before, with handsets such as the Google Pixel 8 series receiving updates for seven years. 


Furthermore, device manufacturers are improving repair choices and part availability, with some even offering self-repair programs so you can restore your gadget. 


If you intend to keep the same phone for as long as it is officially supported, you will almost certainly need to replace its battery at some point.


Because batteries weaken over time, the maximum charge capacity and hence the runtime of your phone on a single charge are reduced. Knowing whether to replace your phone’s battery is difficult, however, because there is no convenient way to measure the remaining capacity. 


Some apps can provide an approximate approximation, but they require days or even weeks of data collection to arrive at a relatively precise number. Even yet, these apps may produce completely erroneous results.


Because the Android operating system already gathers many battery-related statistics in the background from the first boot, it’s better suited to delivering this type of estimate than a third-party program that just begins collecting data months or years after the device was originally set up. 


The battery itself would be an even better source of this information if it could share it with the OS. Fortunately, Google has been working on this for the past year. Android 14 set the basis for the OS to track battery health data, but Android 15 could display such data to consumers.


Google released a new “battery information” tab under Settings > About phone with the release of the Pixel Feature Drop for December 2023. This page, as seen below, displays the device’s battery’s production date and cycle count. Under the hood, Settings obtains this data via new APIs introduced in Android 14.


Manufacturing date and cycle count aren’t the only battery-related details exposed to apps via new APIs in Android 14. Other battery health information is also provided, such as the date of first usage, charging policy, charging status, and state of health. 


The state of health is particularly interesting because it estimates the battery’s current full charge capacity as a percentage of its rated capacity. For example, if your Pixel 8 battery is 90% charged, its remaining full charge capacity is predicted to be at 4118mAh (compared to the rated 4575mAh).


The current version of the Settings Services app (an extension to the Settings app on Pixel and other devices) found within Android 14 QPR2 Beta 2 has a new “battery health” page that is set to show the state of health. 


Because this new page isn’t currently live, we had to manually enable it to see it appear under Settings > Battery, thanks to a tip from Nail Sadykov, the moderator of the Google News Telegram group. 


The page does not yet display the exact state of health, but it does warn that “batteries degrade over time and last fewer hours between charges.”


Strings in the APK indicate that this page will display the “estimated percentage of charge the battery can currently hold compared to when it was new” (i.e. the battery’s state of health) before and after the “recalibration” of the battery. 


We don’t know what “recalibration” means, but given that one string implies the “process may take a few weeks,” we’re guessing it’s simply the system collecting data over a longer period to produce a more accurate estimate of the battery capacity. 


Meanwhile, the “initial battery health values” are “based on lab results” and “may vary from your actual battery state.”


Although we don’t have any screenshots of the “battery health” page that show actual battery health statistics, we did uncover these icons that represent the battery capacity being reduced, the battery being recalibrated, and the battery capacity not being detected. 


We also discovered that the Settings app will display “tips” to the user when the battery capacity is decreased or cannot be recognized, saving the user from having to manually check the “battery health” page.


Finally, we heard that Google is working on making more battery-related information available to the operating system, such as the part status and serial number. 


The part status has three values: UNSUPPORTED (the device cannot distinguish between an original and a replaced battery), ORIGINAL (the device has the original battery with which it was manufactured), and REPLACED (the device has a replaced battery). 


The battery’s serial number is a string of six or more alphanumeric characters that uniquely identifies it.


We don’t know whether Google intends to use this additional information for anything, and we’re hesitant to speculate because they have yet to commit this code to AOSP. 


We do know that Android will support reading the battery’s part status and serial number as long as the battery provides such information to the OS and the vendor implements the next version of the Android health HAL.


The health HAL is the software that bridges the gap between the OS APIs that read battery/charging information (i.e. everything we discussed previously) and the software that controls the battery/charging hardware. Version 2.0 of the health HAL is required to support all of the new Android 14 battery health APIs, such as state of health, which is why so few devices now support it. 


When Android 15 is released next year, Google’s Pixel devices should be able to display battery health-related information such as the state of charge without using the part status or serial number to prevent self-repair, as Apple now does.


Comments