[Verizon Samsung Galaxy S 4] BillBauman:
Battery Life - It's not the ROM

OUT OF DATE

At the request of many users, I've moved this post to a separate thread for comments/discussion/subscription, etc. Please go here for the most up-to-date version:

[GUIDE]Better Battery Life 101, App/System Settings - It's not the ROM

I'll leave the post below, but please note it is out of date and the above link is the most up-to-date version.

This post is about getting great battery life. It is not inclusive, it will reference other posts. What I WILL talk about is what I did, the user-level stuff, explained in a more user-friendly fashion than some of the diagnostic-focused posts out there (still invaluable reading, though).

Preface

Okay, I'm writing this because I believe that [MENTION=4600715]sbreen94[/MENTION] [MENTION=2674508]eschelon[/MENTION] [MENTION=3152067]iceandfire[/MENTION] [MENTION=3357040]Imoseyon[/MENTION] [MENTION=473262]TrevE[/MENTION] and [MENTION=4325945]ktoonsez[/MENTION] all have done awesome, awesome dev work from which I have benefited. There are SO many other devs, as well. These are some from whom I directly benefit, regularly, daily, or did at one time. If you want a name added to the list, I'll update my post. This post, though, is sort of Hyperdrive specific since [MENTION=4600715]sbreen94[/MENTION] has added a few tweaks that make it SO EASY to address some major offenders of ... sucking the life out of your battery.

Why do I mention this? Because does anyone truly think that a ROM dev or Kernel dev, compiles code, puts it on their device, runs it for days/weeks, releases it to the community (after testing), and was really happy with 1.5 hours of battery life? NO! So, then, WHY does every ROM/Kernel thread have post after post, of people saying “Hey, I loaded this ROM and my battery life sucks now.” Do you REALLY think it's the ROM/Kernel?

We also have those that think they have no apps loaded, or “only 3, 4, 5, or whatever number”. If you think that, then do this, Wipe your Dalvic Cache, reboot your phone, and tell me the number of apps it says Android is now optimizing. That is the number of apps you have on your phone, not the number you personally loaded. That means each one of those is a potential culprit for causing battery drain.

BTW – at one time or another, I've probably been guilty of every of the above mindsets. So, I'm not calling YOU out, if YOU are reading this and think that I am. I'm just saying, it's not the ROM, and it's not the Kernel.

Background Reading

The below two threads had everything I needed to know to get started increasing my battery life. I, probably like many reading this, had for a long time followed along, envious of screenshots of people getting those 3, 4, 5+ hours of screen time, and day+ or days of battery. After reading these threads, doing the analysis, and basically just changing some app settings, I can now get the 4-5 hours of screen and full day of battery out of my GS4. Kernel doesn't have much effect, ROM doesn't have much effect, most all of them do what they're designed to do, and do it well. Sweet.

In the next section, Real World Battery Saving, I'll explain what I did, so if you want to skip the background stuff, you can.

These two threads contain basically everything you need to know about improving battery life. They have great details about diagnostics, what's what, etc. What many threads/posts like this sometimes lack, is, the straight-forward answer of “This is what you should do after analyzing x, y, z.” That's what's in the section of this post Real World Battery Saving.

[APP][2.1+][09 Sept. - V1.14] BetterBatteryStats

[GUIDE] Wakelocks Definition and how to prevent them

Read those threads, and do some analysis, and the majority of what I've posted below you'll figure out on your own. If you just wanna jump into fixing things without the above understanding, then just go to the next section.

Real World Battery Saving

For those of you that don't want to read about the analysis of apps, etc., to get to better battery life, here's the summary of what's below:

Minimize screen brightness

Disable all Push

Disable all system sounds (Dialing keypad tone, Touch sounds, Screen lock sound, Haptic feedback)

Greenify any app that you don’t need to notify you of things

Greenify every Google app (except Voice)

Uninstall GMail (use any other client with IMAP)

Disable all GPS (enable as necessary upon use)

Disable the autostart of almost everything, at almost any time, on an app-by-app basis. AutoStart Check delivers in spades for this function, at no charge, though, I recommend donating (as I do for all apps here, I have either donated or bought them all, Lux, AutoStart Check, etc.).

Continuing on with details...

In general:

You want your phone to sleep when not in use.

You want apps to not be doing anything when you're not using them.

You want your screen to only ever be as bright as it needs to be, no brighter (including, off when you're not looking at it).

Display Brightness

Lux – Get it here Lux Auto Brightness

Thread here: [APP][2.3+] Lux Auto Brightness 1.51

Screen uses more battery than anything. You can do all kinds of things to address this, for me, Lux has been a (battery) life saver. It's easy, it reads the ambient light in your environment. Open its dashboard, slide the slider to the brightness that works for you at that lumen level, hold down the link button in the middle, and there you have it, locked in for those conditions. You only have to do this a few times and you now have custom lighting profiles that fit your eyes' needs under all conditions. Note, sometimes, when waking the phone in the sun, you'll have to wait a few second for Lux to activate and bring the screen up bright enough. This means that Lux is behaving extremely well and not constantly running in the background (Wakelocks) sucking up battery.

Applications

For applications, firstly, if you have an app that has Push available, disable it. Nothing keeps your phone from deep sleep like a Push-enabled application. If you can't wait 5/10/15 minutes for updates, then you can't achieve maximum battery life. Sorry, I don't make the rules of Android app-physics, I'm just sharing them with you.

In my mind, I think of applications in categories. I guess, I have 4 now.. I started with 2. Point being, there are different apps that behave differently so you treat them differently with different solutions for extending your battery life.

Category 1 Apps I want running and want notifications from them. When configured properly, they generally do not misbehave and eat my phone's battery

Category 2 Apps that I cannot seem to control, regardless of their settings, but I still want to be able to use, but getting regular or instant updates from them is not that important to me

Category 3 Apps behave without any special settings and without any Greenification. Just load them, run them, use them, don't worry about them. I haven't seen them cause any sort of bad battery drain.

Category 4 Apps are apps you DO think are vital/desirable (to you) but cannot control their battery consumption with mere settings. For those, only the developer can help you, or you have to accept the battery loss that app's notifications bring with it.

Category 1 apps, well-behaved when configured properly, along with the settings I used to make them behave well and still deliver their updates to me.

Corporate E-mail: Built-in e-mail, TW or AOSP. Disable Push for any account, use Priority settings for 15 minute interval on work days. Non-prioirty times set to 1 hour.

Maildroid: For every account, you must do this separately, under Preferences / Advanced – Connection Management, select first account, the rule (usually 1. Default), Connection Management, Wi-Fi: Close connection when I exit mailbox, GPRS, 3G: Close connection when I exit mailbox, Interval to check mail: 10 (or to your liking), Check Mail Periodically. Go back, go back in (confirm settings were kept, I've seen it not keep them and have to do this a few times, per account). Alternatively, select Let device sleep, and it will only check when you wake it up. Go back to Accounts and select your next account, do this again. You must do this for all accounts listed.

Viber: Just make sure your Wi-Fi sleep policy is set to device and not constantly on, and Viber seems to behave pretty well as far as messaging apps go, but it's probably going to make the Category 4 list, as well.

WhatsApp: This one appears to work well (better than Viber from a wakeup perspective) and not have any sort of unnecessary battery drain. I generally don't use it any more since I feel they bait-and-switched me from free to fee, but I dethawed it to check it out. If anyone sees problems with it, let me know.

Category 2 Apps. These apps were keeping my phone awake at night with nightmares, and no amount of settings changes seemed to fix the problem altogether. If you have a solution of app settings that would move these to Category 1, please let me know. When I say solution, I mean, you've done the Wakelock and Alarm analysis and they're eliminated or minimized. For these, I Greenify them all. None of these apps' updates are so important to me that I can't just check up on them when I have a moment.

Facebook: I didn't play too much with settings here, but it seems that if FB is running, it's keeping your phone awake. I Greenify it and check it manually. I'd be interested in hearing if someone knows settings that will get it to not wakelock / alarm constantly.

FB Messenger: I love the chat heads and ease of use, but it's a big-time battery offender. I keep it installed and Greenified. If I get messages, I'll see them when I open the FB app, and when I reply, FB Messenger takes over and I use it normally until the conversation is done. At some point, Greenify takes over, and FB Messenger's battery damage is contained.

Google Maps: You can't fix this thing. No amount of settings will stop it from going after your phone. I love its functionality, though, so, unlike many guides that say uninstall it, I say Greenify it.

Google Goggles: A fun one to have around sometimes, but it will also chew up battery. Just Greenify it.

Almost everything else: If it's an app that doesn't need to provide you updates, just Greenify it. Why not? One of the first things I do after loading a new ROM and getting most of the configuration stuff done, is I go into Greenify, and I add every mundane app on my phone, for example: Vonage, Adobe Reader, Airbnb, Angry Birds, APN Manager Pro, Google Authenticator, Barcode Scanner, Citibank, Craigslist, Google Drive, DroidVPN, ES Task Manager, Fast Charge, FasterGPS, Flashlight, GasBuddy, GNotes, GooManager, GPS Status, Hyatt, Lucky Patcher, Office Document Viewer, Office Suite, OpenTable, Opera Classic, PayByPhone, SoundHound, Squeezebox, Street View, etc. My list goes on... You aren't going to lose their functionality, they don't suddenly stop when in use, and you don't have to worry about them ever causing problems you weren't thinking you had to look for.

Category 3 Apps that behave, no special settings, no Greenification

Alarm Clock Xtreme: I don't use the built-in Alarm Clock. I like all the features of Xtreme, it's never failed me, and it doesn't show up in Wakelock/Alarm offenders lists in my analyses.

Google Voice: Of all the Google offenders, this isn't one of them in my experience, and I love its features.

Lux: Nuff said.

WhosCall: A caller-ID type app. I don't love it, but haven't gone looking for something better, that said, it hasn't popped up on my battery draining radar, so that's a plus.

Hangouts: While I don't care for the new Google Talk, it sure doesn't seem to be a battery offender, and I use it to chat regularly.

Category 4 Apps are anything that would have gone into Category 2, but you want them as active as possible.

Line: In Settings, Chats and Voice Calls, I turn off Receive Voice Calls. This made Line tolerable (as in, way better), but it's still a Category 4 until (if ever) its devs reduce its number of wake-up Alarms

Exchange Services: Despite Corporate E-mail being a Category 1 now, Exchange Services is still keeping my phone awake more than I'd like. Nothing I can do here, though, so I live with it.

Viber: As stated, it's not a terrible offender, but it's still on the radar for keeping my phone awake. We'll see what their “any day now” major update brings. (someone remind me to update this post if I haven't post-Viber release)

Automatically Launching Applications

AutoStart Check - Get it here https://play.google.com/store/apps/details?id=ro.rbrtoanna.autostartcheck&hl=en

Fire up AutoStart Check (or any other autostart configuration app), set your view to Group by App, and expand every one of them and look at just how many different places some of these apps are set to start. Your Gallery starts with your Camera? ES File Explorer starts when you mount media or remove bad media? Facebook fires itself up just because you plugged in your phone. Google Goggles sees fit to start with every picture you take - and of course, it will then either drain your battery trying to get a GPS signal while your GPS is off, or drain your battery by getting one – fail. If you use S Health, it starts when your time zone changes – that's important. YouTube, seriously, YouTube – change accounts, mount media, connect power, every boot – you obviously need YouTube to fire up. Yeah.

A note here, read some guides on these before turning off too many system services. For example, don't disable messaging, bad idea, bad things happen. But most of this stuff, turn it off. You aren't killing your ability to use it, you're just making sure it isn't turning on all the time. If you've also Greenified well, after using any of these, they'll hibernate in the background without you having to worry.

Disable all system sounds (Dialing keypad tone, Touch sounds, Screen lock sound, Haptic feedback)

This is explained in some of the other threads, but, if you don't want to do the research, basically, the background services in Android that manage these things keep your phone awake. Turn them all off, battery life goes up.

Media Scanner

[MENTION=4600715]sbreen94[/MENTION] included in the Hyperdrive Tweaks tools a one-button solution to turning it off. If it's drainging your battery, or you just want to make sure it doesn't, go click the button. This thing is better than the Staples button!

Battery Save Apps

I used to be madly in love with 2x Battery. Others swear by JuiceDefender. I guess if you don't/won't want to take the time to optimize apps and Greenify, they might be beneficial. You know what I found, though, when I started down this path? Some of the biggest offenders of Wakelocks and keeping my phone from sleeping when it should, are these battery saving apps!!! I now get BETTER battery life WITHOUT 2x Battery!

Short thoughts on this and example concepts of what's going on...

It may sound counterinterintuitive, but it seems most of the apps are so vigilant they keep your phone awake when it could be sleeping. And the vigilance isn't so necessary when you've properly configure things to not need this sort of overactive management of things. I'd love to see 2x Battery properly manage my data connection for me, without Wakelocks, but what's to say that the app trying to sync when the data is off won't now stay awake with new Wakelocks trying to get out to the internet? There's a cascading effect of whatever approach you might choose, so try to think about that, and keep it in mind when you look at your Wakelocks and your Alarms and you do your analysis.

The End

Okay, so I think that's aobut it. I may have forgotten some things, and I know this is a long post. But, this leaves very little excuse for people to blame ROMs/Kernels, while at the same time giving you the straight-forward, real world answer to battery savings 101. Yes, there are apps and details I left out. If anyone thinks of some obvoius ones, just let me know and I'll happily update this post.

You don't have to analyze any statistics or logs to do this. The principles are sound, and you'll see a dramatic improvement in battery if you don't already get a day of usage and 3.5 to 4.5 hours of screen time on your GS4. You just make some of these relatively straight-foward, user-level, common-sense changes.

If these changes don't give you the results you'd like, then do the analysis work in the threads linked above and find out what's the real culprit. Profit, enjoy, be happy. And remember... It's not the ROM. :)