The single most common complaint you'll hear about any smartphone is how lousy the battery life is. Granted, battery life is like mileage on a car -- it will vary widely depending on your usage. You can always buy more time by making fewer calls or downloading less data. But then, you probably carry your smartphone in order to use it.
Luckily, there are things you can do to extend your smartphone's battery life without making major sacrifices. The easiest option is to use a third-party app that intelligently modulates your phone's energy usage based on demand and behavior.
[ See who wins InfoWorld's deathmatch comparison: Apple iOS 5 vs. Google Android. | Learn to manage iPads, iPhones, Androids, BlackBerrys, and other mobile devices in InfoWorld's Mobile Device Management Deep Dive PDF special report. ]
My Android phones - a stock LG Optimus T and a Cyanogen-modded Motorola Cliq TX - have always been greedy consumers of battery power. To tame them, I looked at four different programs that can make you and your phone smarter about power consumption.
The best place to start if you just want to survey your power usage habits is Battery Indicator. To follow that up with actual power management, Green Power and JuiceDefender are your best bets. 2x Battery is not a bad program, but it's limited to managing cell data and not Wi-Fi connections. If that feature were added in a future revision, 2x Battery would be a real contender.
Working with these programs revealed a whole slew of little quirks and eccentricities about power management in Android, many of which I wasn't previously aware of. For instance, some breeds of Android phone -- such as the original Motorola Droid and the Samsung Moment -- only display battery levels in 10 percent increments. This makes it difficult to gauge battery life properly on those phones, even if you're not running the stock version of Android.
One of the biggest reasons for shortened battery life is background applications that persistently attempt to maintain connections (for push notifications, for instance). I found I had a couple of these programs running in my 'Droid -- neither of which were essential, thank goodness -- and had to either uninstall them or force-kill them to prevent them from slurping up my battery. One was the Facebook app, which I've since substituted with just accessing the site via my mobile browser.
Some system management apps for Android have a function that allows for blacklisting or force-closing apps you don't want to run, such as the auto-launched apps often installed in many handsets by a given wireless provider. I'm not fond of doing this because in my experience constantly force-closing apps leaves the system less stable over time. Thankfully, the more capable power management apps provide a more elegant solution.
Android battery savers: Battery Indicator
Darshan Computing's Battery Indicator (version 4.0.4) doesn't have actual power management functions, but it's a good first app for those curious about their phone's battery usage. The program itself has no perceptible effect on battery levels, so you can leave it running without worrying about draining anything.
The free version (the best place to start) places a text icon in the status bar that tells you the exact percentage of battery power available. Pull down the status panel and tap the entry for Battery Indicator, and it will pop up a panel that tells you how long you've either been charging or running on battery power. Tap "View Battery Use," and you'll be taken to Android's own battery usage menu, which will show you which applications and system functions are eating most of your battery power. (It turned out that the display and the network standby were two of the biggest culprits in my case, so my first step was to turn down the brightness of the screen.)
Battery Indicator Pro ($1.99) includes additional informational features like the ability to log the battery's activity to a file, set alarms for battery levels, and customize the look. If you don't need the logging, the free version does just fine, and it's been the most convenient way for me to add an at-a-glance power level to the status bar and get a good grasp on where the battery juice goes most of the time. But as the name suggests, Battery Indicator is for information only; if you want to do actual power tweaking you'll need to get something else.
Android battery savers: Green Power
Green Power (version 4.9) mainly does one thing, but does it so well and so flexibly that the benefits reaped are considerable. This app governs how the phone accesses the network, toggling cellular and Wi-Fi network connections on or off based on demand or need. Once set up, it runs unobtrusively in the background with no CPU demand. A green leaf icon in the status panel shows you at a glance if Green Power is at work.
I use Wi-Fi heavily, thanks to the generous number of free access points in my neighborhood, but keeping Wi-Fi on continuously kills my handset's battery power in short order. I don't always remember to toggle Wi-Fi manually, though, so this is where Green Power steps in. You can set timeout values for how long Wi-Fi remains on when the screen goes dark. You can set a keep-alive value for Wi-Fi based on background traffic -- handy if you're streaming video or music. You can even set timeouts for failed attempts to find a network, to prevent the system from wasting battery by attempting to re-connect to a network that might not be there. All this -- and tons more -- is available in the free version.
Green Power Premium ($1.99) adds the ability to specify a "night mode," which applies a different set of rules based on time of day. This includes, for example, whether to toggle the network on when the screen is activated, or to just fall back into airplane mode. The Pro version also lets you manage Bluetooth networking with much the same flexibility as Wi-Fi.
Green Power has so many useful features I found myself hungering for even more. My phone gets far more power in 2G mode than 3G, but Green Power offers no way to switch between 2G and 3G as a battery-saving measure (using only 2G in night mode, for example), though Android lets you toggle this manually. But the things Green Power does, and does well, make it absolutely worth trying. The newest version adds a plug-in architecture, so new features courtesy of third parties may soon be on the way.
2x Battery (version 1.43) comes off as a lesser version of Green Power, as it has many of the same features but not quite all of them. Whereas Green Power manages both cellular and Wi-Fi connections, 2x Battery focuses on cellular data connections. If it had any Wi-Fi-specific features, it would be outstanding. As it is now, it's only pretty good.
When enabled, 2x Battery can disable cell data whenever the screen dims or after a specific amount of time, but it can maintain the connection if any programs in a user-defined whitelist happen to be running. You can also set an intermittent interval to allow data connections with the screen off, so programs can talk intermittently to the network as needed.
In addition, 2x Battery provides you with a status-bar icon that lets you know, both graphically and numerically, how much power remains. Open the status panel, and you'll see some details about estimated battery life and savings. The program's main panel shows you its current running status -- for instance, if it's paused because Wi-Fi is turned on -- and more details about the battery life.
The biggest omission is explicit control over Wi-Fi. If the phone connects to a Wi-Fi network, all of 2x Battery's data management functions are automatically disabled. This is a showstopper for me because I use Wi-Fi more often than cell data, and I want to manage both where possible. For people who don't rely so heavily on Wi-Fi, 2x Battery might be a good fit. It's free.
Android battery savers: JuiceDefender
If Green Power is flexible, JuiceDefender (version 3.8.0) is downright bend-over-backwards-able. JuiceDefender offers more options, more utilities, and more ways to work for you than anything else I've seen. The only drawback is that the free version is extremely limited. To get useful results, you'll need the Plus ($1.99) or Ultimate ($4.99) version, especially if you use Wi-Fi more than you use cellular data.
JuiceDefender has five power moderation profiles available out of the box. Balanced (the default) is exactly what it sounds like: JuiceDefender tries to maximize battery life without making a major impact on your phone's performance. Aggressive kicks in some extra battery-saving measures when power gets low, mainly by disabling connectivity entirely until you get the battery level back up to a certain point. Extreme disables all connectivity by default, requiring you to enable it manually whenever you need it, and toggles it back off again when the screen goes dark and data activity stops.
If you want to customize the settings, you can do that in the Plus and Ultimate editions of the program. In Plus or Ultimate, you can set network timeout intervals, night-mode settings, the battery threshold for total network disconnection, network traffic thresholds for toggling connectivity, and so on. A lot of these options are similar to what Green Power offers, but they're presented a little more elegantly and with better explanation right in the program.
Both Plus and Ultimate give you automated and location-based control over Wi-Fi. Ultimate adds the ability to adjust screen brightness based on ambient lighting and time of day, to control the cell network you're using (2G, 3G, or 4G), and even to scale CPU frequency if your phone ROM supports it. It also allows a higher degree of customization for the various power-saving modes.
JuiceDefender has a veritable catalog of nifty, well-thought-out features. The notification bar for the program, in the Android pull-down notification area, lets you see at a glance, via a row of icons, what is and isn't enabled. Tap the right side of the bar, and you open the Quickbox, which gives you one-touch access to enabling or disabling network connectivity. Another great function is location training for automatic Wi-Fi connectivity, where you can teach the program where your most commonly used Wi-Fi hotspots are, and it will automatically turn on Wi-Fi and connect to them whenever you're in range. This function uses the cell-network triangulation system to gauge your position, so its accuracy may vary depending on the signal quality in your area.
One feature I particularly admire is the periodic-connection schedule, which helped me tame the battery usage for many apps I use. This allows apps like Twitter, Facebook, and Google+ to sync up with the network every so often (you determine the interval) without maintaining a constant connection. These apps are one of the biggest reasons I end up with a dead battery in the first place, but I don't like gutting their functionality. Until they begin to tame their own battery-killing behavior, JuiceDefender is a good way to keep them in check.