5 Ways Project Volta Improved Battery Life Of Android Devices

Listen on the go!

Project Volta is an attempt to boost the battery life of Android devices. Like the projects that came before it, Volta is a wide-ranging effort that touches many different parts of the OS.

For each Android release, Google likes to have a “Project” that picks an area of weakness and focuses on tuning the whole OS to fix it. In Jelly Bean it had Project Butter, a concerted effort to make Android’s UI animations run at 60fps. In KitKat there was Project Svelte, which aimed to get the OS running on only 512MB of RAM after optimizing memory performance. Now in Android L (Lollipop), Google has decided to tackle the most talked about issue about our smartphones – battery life. This is an awfully tricky thing to solve, particularly as the smartphones are constantly getting more powerful; featuring larger screens; and being used more and more for everything from downloads to browsing online to shopping online. So instead of strapping an enormous battery pack to the back or making the devices huge in order to accommodate much bigger batteries, Google has looked to optimise the Android Lollipop OS, so that our devices last longer – and hopefully any updated Android phone will see the benefit.

At the core of the effort comes an interesting find: the company monitored stats from the Nexus 5 revealing that roughly every 1 second of unnecessary active time (this would be the processor and modem waking up to check for updates or do a task it could do later) results in a 2-minute reduction in stand-by time. Now, imagine this on your average smartphone with 50 apps running, each taking 1 second of unnecessary active time per hour. Those seemingly small interruptions add up to a massive 100-minute reduction of your stand-by battery time for every hour all those apps run. And 1 second of unnecessary activity per hour might even be an optimistic scenario for some apps. 

Lazies first: This finding pushed Google to find a solution with an approach the company calls ‘lazy first’. Lazy first is basically a principle that encourages developers to schedule non-urgent tasks to be executed in the last possible moment. That’s a radical change from the current, purely performance-driven thinking apps schedule even non-urgent operations on a first-come first-serve basis.

With the new ‘lazy first’ approach, the effect accumulates for multiple apps running on this principle, so you can coalesce activity together for execution, rather than have every app continuously wake up the phone to do its operations. Let’s be clear about this push, though – it is good for tasks that do not need to return immediate user feedback. For the remaining cases, a developer would still build on a first-come first-serve basis.

JobScheduler: Of course, in order for users to fully feel the benefit, Google is making an effort to convince its third-party developers to optimize their apps as well. To make this easier, with Project Volta, Google introduced a new API called JobScheduler. This new API provides easy tools to make your app ‘lazy’: with it, you can delay certain tasks to execute when, say, a Wi-Fi or cellular data connection is available, or when the phone is plugged in, or so on.

Now, this is not a completely new approach to improving battery life – it looks a lot like the optimizations that Microsoft implemented in Windows 8 and that Apple introduced in OS X Mavericks, but Android seems to be among the pioneers of this approach in mobile.

The ART runtime: Android Lollipop brings with it the new ART runtime environment. While it’s currently available to test in Android KitKat 4.4, the version in Android Lollipop is more advanced. Google’s promising a big performance boost to apps in addition to lots of new features like support for 64-bit processors and apps, but there’s an impact on battery life, too.

The current runtime environment, called Dalvik, compiles code every time an app is run (this is called “just-in-time” compiling). ART compiles and optimizes the app’s code once “ahead-of-time”, meaning less processor time spent compiling and thus less power use. There’s a lot of technical stuff in ART (like vastly improved garbage collection) that makes it faster and more efficient than Dalvik, all of which translates into better battery life.

battery historian android

Battery Historian: Another element of Project Volta that will be instrumental in achieving a notable battery improvement on Android devices is the stat-laden Battery Historian tool. This is purely a developer-oriented tool that can be used to see how the app performs with an immense level of detail (down to each wake-up event it causes in a per-second timeline).

With Battery Historian developers will be able to see the problem – if there is one – with their app and why it is draining battery.

If you cannot see a problem, you cannot fix it. Battery Historian gives developers the tools to now see the issue very clearly.

Battery Saver mode: Finally, Battery Saver mode is a part of Project Volta that every user can relate to. In fact, Google claims that one can squeeze around 90 minutes more in battery life by doing the following:

  • reduce the speed of the processor (and cap the amount of cores running)
  • reduce the refresh rate of the display
  • limit background data

We can enable Battery Saver from the settings at any time, or have it automatically kick in when the battery drains down to a 15% level of charge. This kind of battery saving tools can make a big difference for battery anxiety on smartphones, and while we’ve seen first-party solutions from Samsung and HTC, we’re glad that Google is introducing a system setting that would work on all devices.

Project Volta Results:  Battery tests were performed on a Nexus 5 running both Android KitKat4.4 and the developer preview of Android Lollipop, and the results were impressive. The test involves taking a fully charged phone (with Battery Saver disabled), setting the brightness to 200 nits, and making it run a script to refresh the same set of web pages over Wi-Fi, every 15 seconds, until the battery runs out.

The developer preview of Android Lollipop lasted a whopping 36 percent longer than Android KitKat 4.4. That’s another two ours of screen-on browsing time! It’s hard to say exactly how this will translate to your own phone, loaded with a variety of different apps running the final version of Android Lollipop, but these early results are incredibly encouraging. We can safely say that when all phone makers optimize their apps, we can see more progress in battery life boost.

Author

  • Shaik Himad Ali

    Shaik Himad Ali is into Mobile Testing domain for the last 9 years. He has served under various roles in QA ranging from QA Tester to QA Project Manager. He is currently Project Lead in Cigniti Technologies, Hyderabad. An avid reader, he enjoys keeping himself abreast with the latest trends in technologies, future concepts and how technology affects in our daily lives. '