Last Update: 8/6/2011
Basis:
Wifi always on causes SOD. There are numerous anecdotal reports that setting wifi to be off with screen off reduces/stops SOD.
Plan:
Utilize DroidWall to limit wifi use by applications and find out which applications appear to be safe by selecting specific applications and seeing if SOD occurs.
Why:
Even though turning off wifi with screen off saves battery, some people would like their nook to be pushing/updating with wifi when it is in sleep, getting emails, messages, etc.
What you can do:
1) Download/Install DroidWall
2) Using WHITELIST, check off one or two applications that you utilize the most.
3) Turn _ON_ firewall
4) Update the rules whenever you add or remove apps.
5) Change your wifi setting to always on (advanced options under wifi settings * need to hit menu button to see this option in cm7)
Apps so far tested without problems:
Email (stock)
Improved Email
Dolphin HD 6.0
Epocrates
Market
Amazon Appstore
Possible SOD related App
Downloads, Media Storage, DRM Protected Content Storage, Download Manager (this is one heading in DroidWall)
Apps so far tested that _might_ cause SOD:
*from posts, possibly Latitude.
Testing
K9 Mail
RoadMap
Rom Manager
Netflix
Executive Assistant+
Please post your findings.
I will update this post as we get more information.
Thanks.
DroidWall did not solve it for me... in fact it wouldn't even run on my Nook.
It works for me. At first, I forgot to turn on the firewall, then I forgot to update rules when I changed things.
So far, I have the following for access to wifi:
Market
Appstore(amazon)
Dolphin Browser HD
Epocrates RX
Email
Improved Email
I just turned on Appstore and Market for the first time tonight, so I'm not sure how well it will do.
I use my nook all the time at work, probably turn it on from lockscreen sleep about 15-20 times over 10 hours, so if I don't get a SOD by the next day, I will put market and amazon appstore on the safe side.
Interesting development:
I got my 1st SOD today.
Please note my active programs at this time.
Please note that it occured after I started the combined service noted in the OP:
Downloads, Media Storage, DRM protected Content storage, Download Manager in the Droidwall options.
I will remove this option (which makes it impossible to update market aps for that matter) and see if the SOD doesn't happen for the next 3 days. The restart it and see if I get SOD again.
If this is the cause, then I should be able to show that SOD occurs with it active.
nm
10chars.
Using white list and only allow full-time wifi access to "linux kernel" and "apps running as root"
Never have more than one or two other apps besides these access to wifi when in sleep mode. I never allow gapps full-time wifi access and that goes double for market.
Where did this idea come from? *ducks and runs*
I do believe drm checks are screwing with the nook.
Sent from my NookColor using XDA Premium App
Just wanted to pop in and say thanks for the very useful testing.
Okay, update - I left the downloads/media store etc on the last 3 days and haven't had another SOD. So I'm not sure what to think about that. I will move forward and enable K-9mail today and see how things go over the next couple days.
here's my take on it: it has to do with the router, or some configuration of it.
I have a wrt54gs v1.1 at home and a wrt54g v4 at work, both running tomato software, both with Cox internet.
I get CONSISTENT SODs at work, as a side note the router is a also crashing for an unknown reason. the two don't happen at the same time. I've been trying to grab logs for weeks can't explain it or the fact the nook NEVER SODs at home.
the nook can run at home for days perfect, once at work it can SOD 6 times a day or more.
there has to be more going on than an errant app.
Phatdawg said:
Last Update: 8/6/2011
Basis:
Wifi always on causes SOD. There are numerous anecdotal reports that setting wifi to be off with screen off reduces/stops SOD.
Click to expand...
Click to collapse
Can you clarify what you mean by "reduces/stops" ? Does it reduce it or does it stop it ?
Also, I've been away for awhile - is this the only SOD cause that is not fixed in the current CM7 nightlies code ?
Thanks !!
I've had SOD at home and at work. It's possible we both might have a problem.
I'm currently sitting at 36 hours of up time with the below white listed items. Without droid wall enabled I would consistently get SOD. I am working towards white listing all items one by one to see what causes a SOD. I have discovered that if I white list Google Maps I will get a SOD. However, until I white list all other items I am not prepared to call Maps as the cause of my SOD.
Nightly#152
No undervolting, clocked to 1200mhz.
White listed:
Android system
appstore
BBC News
Browser
Calendar
Chrome to Phone
Chromemarkslite
Clocksync
Cyanogenmod Update Notifications
Dropbox
eBay
Email
Facebook
Feedly
Gallery
Gmail
Google Reader
Google Search
Google services framework
Google+
Listen
Market
Market feedback agent
Music
NYTimes
ROM Manager
Scrollable News
Talk
The Weather Channel
Titanium Backup
Twitter
UK & World News
guy2545 said:
I'm currently sitting at 36 hours of up time with the below white listed items. Without droid wall enabled I would consistently get SOD. I am working towards white listing all items one by one to see what causes a SOD. I have discovered that if I white list Google Maps I will get a SOD. However, until I white list all other items I am not prepared to call Maps as the cause of my SOD.
Nightly#152
No undervolting, clocked to 1200mhz.
White listed:
Android system
appstore
BBC News
Browser
Calendar
Chrome to Phone
Chromemarkslite
Clocksync
Cyanogenmod Update Notifications
Dropbox
eBay
Email
Facebook
Feedly
Gallery
Gmail
Google Reader
Google Search
Google services framework
Google+
Listen
Market
Market feedback agent
Music
NYTimes
ROM Manager
Scrollable News
Talk
The Weather Channel
Titanium Backup
Twitter
UK & World News
Click to expand...
Click to collapse
Thanks, if you go without SOD for 3 days straight like this, I will add these problems to the safe list.
I only get it once I run the Pandora app, close it, and after some time in background, sod.
My experience has been that using the Green Power app in Market keeps my NC alive for a week or more of light use and completely stops SOD. When I disabled Green Power last night, SOD happened, so I was happy to see this thread. It is definitely related to wifi.
For anyone that wants a quick workaround, I do recommend this app because it tells your NC to check wifi on regular intervals so I still get notifications / emails but wifi is not on all the time which saves battery.
WPA_SUPLICANT task
Hi,
I have been getting SOD. My workaround has been to manually turn off
WiFi before I turn screen off - this seems to have worked.
I didn't have them under CM7.03. I have been getting them on all
the nightlies I have tried since them, currently using N146
Mentioned above is an app called GreenPower, I thought I would try this.
I still get SOD with it. (I think I just used the default settings)
This time after powering back on, I looked at my SystemPanel app traces.
It looked like the (task?) WPA_SUPPLICANT was using 100% CPU sometime after
I turn off the display.
Attached are 2 screen captures from System Panel:
One with last 2 hours, showing recent 100% WPA_Supplicant CPU usage SOD
One showing 8 hours of apps running with most CPU usage.
Note System panel is showing device charge constant, but after reboot,
charge is much lower (last night it discharged totally)
Also attached are two alogcat captures - not sure if they have useful data
or not though.
One from SOD earlier in the day
One from recent SOD captured in screen SystemPanel capture above.
Hope this helps...
Peter
olm3ca said:
My experience has been that using the Green Power app in Market keeps my NC alive for a week or more of light use and completely stops SOD. When I disabled Green Power last night, SOD happened, so I was happy to see this thread. It is definitely related to wifi.
For anyone that wants a quick workaround, I do recommend this app because it tells your NC to check wifi on regular intervals so I still get notifications / emails but wifi is not on all the time which saves battery.
Click to expand...
Click to collapse
I tried Green Power and my nc hasn't had a SOD since you posted this. Thanks for the recommendation. I used to get SOD on a daily basis.
I used to get sod even with green power. So I set 2 profiles with tasker one for wifi off when screen is off and one for wifi on when screen is on. No sod for a week.
Sent from my NookColor using Tapatalk
ottoman1384 said:
I tried Green Power and my nc hasn't had a SOD since you posted this. Thanks for the recommendation. I used to get SOD on a daily basis.
Click to expand...
Click to collapse
Two questions. Using Green Power, my wifi does not connect when I wake it up with the nook button. Secondly, when I try to wake up my bluetooth Xoom keyboard by pressing the connect button several times, it will sometimes reboot. Anybody having similiar problems?
Sent from my NookColor using XDA App
Hi,
recently I tried out Sygic which works really nice except for one thing:
when Sygic is running in background after a while (seems randomly) the GPS message disappears (upper message in attached pic), the Sygic message remains (lower message in attached pic).
When I click the Sygic message, the app behaves as if I restarted it (says "initializing" on top right). Luckily, it remembers the old route.
Yet sometimes I don't drive myself and would like to do other stuff and have Sygic tracking in the background.
It works fine with Google maps.Yet not with Sygic. Especially when I launch any other app (even the browser, a video or something), Sygic stops tracking immediately (not always but often) or some time later.
GPS is set to never turn off in Sygic and all settings are set to "optimal".
Could that be the Android OS turning something off for Sygic as it might believe it's no longer used or something?
Sygic is more sophisticated than Google maps and uses more ram. If you start opening other apps after Sygic then they will get higher priority in ram. Sygic doesn't really stop so much as get pushed out of memory until it gets switched to again. Not much you can do about it really.
Sent from my GT-I9300 using Tapatalk 2
Ah that explains the issue, already feared something like that.
The only annoying part is that it no longer tells me where to go when that happens.
Does anyone know whether this happens with other apps such as Navigon as well?
Since the newest update (at least I didn't notice it before) Sygic has an option "Run navigation in back..." under Battery management.
Haven't tested it yet but that supposedly sets the oom_adj values low enough for the app not to get killed.
Ah thanks, that is new indeed.
Yet I tried this and eventually the same thing happens sooner or later. :/
Open Sygic.... go to SETTINGS than go to BATTERY MANAGEMENT (i don't know witch is the correct option in english as my SYGIC is in ITALIAN)... the first setting that is show to you is the opportunity to deactivate the GPS signal after a definite time.... change it!
Yeah that option is now replaced, you can only check/uncheck it. I checked it so it keeps running in background but still shuts off after a while when using other apps.
You're right. I have the same problem. This is ridiculous. You are running navigation and expect it to give you the directions at the right moment, but you don't know that in the meantime, while you got a phone call and checked your messages it was turned off silently and no longer working.
Without an option to guarantee it's working and can't be stopped in the background, you're as if you have no navigation at all.
If this can not be fixed it's better not to even install Sygic, cause this takes away a major part of what this app is meant to do. So stupid.
I have tried Igo and it was the same. How serious is that?! To have a navigation, which can stop while you're using it and need it, without warning!
Did anybody find a solution to this?
Not really.
Either simply leave Sygic running in foreground / don't leave it running in background for a while or use a different app.
After I purchased it I also noticed some other annoying issues, e.g. voice says "take exit number 24" instead of how we navigate here "take next exit to A2" (our motorway navvigation signs do not show the exit numbers anyway), forcing me to look at the app way more often when there is an exit leading to 2 different motorways.
Due to such issues as well as this annoying "I die if you leave me running in background" I decided to switch to Navigon. Nicely, this app even tells you which motorway to take AND where it leads to, so I don't even need to look at it.
I haven't run a full test yet. Yet I left a video running in full screen and Navigon kept running in background navigating. Once I know more, I report back (if I don't forget). In any case, I wished I didn't have spent the money for Sygic after all. What do free map updates any good when the app isn't suiting oneself.
P.S.: I did inform Sygic support about the background issue and they requested more information as they didn't experience this issue yet. I provided that but didn't get another reply, the thread was then archived.
Landorin said:
Not really.
Either simply leave Sygic running in foreground / don't leave it running in background for a while or use a different app.
After I purchased it I also noticed some other annoying issues, e.g. voice says "take exit number 24" instead of how we navigate here "take next exit to A2" (our motorway navvigation signs do not show the exit numbers anyway), forcing me to look at the app way more often when there is an exit leading to 2 different motorways.
Due to such issues as well as this annoying "I die if you leave me running in background" I decided to switch to Navigon. Nicely, this app even tells you which motorway to take AND where it leads to, so I don't even need to look at it.
I haven't run a full test yet. Yet I left a video running in full screen and Navigon kept running in background navigating. Once I know more, I report back (if I don't forget). In any case, I wished I didn't have spent the money for Sygic after all. What do free map updates any good when the app isn't suiting oneself.
P.S.: I did inform Sygic support about the background issue and they requested more information as they didn't experience this issue yet. I provided that but didn't get another reply, the thread was then archived.
Click to expand...
Click to collapse
I agree with you also for the way Sygic works. It's s not that great. Thanks for sharing about Navigon. Please, test it and post here if the situation with "silent background death" is the same. I would appreciate it if you let me know and will be checking to see how you feel about it when you post your comments.
tiho5 said:
I agree with you also for the way Sygic works. It's s not that great. Thanks for sharing about Navigon. Please, test it and post here if the situation with "silent background death" is the same. I would appreciate it if you let me know and will be checking to see how you feel about it when you post your comments.
Click to expand...
Click to collapse
I have been using Sygic for quite a long time and noticed that on my Galaxy Captivate, after initialization, if you switch to some other app then return to Sygic (either from the app icon, or from the task bar) it always restart.
However on my Galaxy S3 after switch back to Sygic it just continues wherever it left off. I guess that my Captivate had less memory to run Sygic while I have plenty on the S3.
Also in Sygic, go to Settings / Notifications and Sounds / Advanced and turn "Sound always on" would let Sygic to continue to turn-by-turn announcement even if it is not in the foreground, even when the screen is off.
I have plenty of free memory (using HTC one x) and still it's killed. But this is not a problem of sygic. it's a problem of Android. Or may be indrrd sygic didn't make the right settings for the memory registration of this app (if that's something that they could do). As I see the oom values of this app are pretty high usually when I check.
Also about the voice: I have this option checked. But I never had an occasion when it spoke to me when it was killed. I'll check again. May be I didn't notice it...
Thanks for your comment on that. I'm surely going to test this.
tiho5 said:
I have plenty of free memory (using HTC one x) and still it's killed. But this is not a problem of sygic. it's a problem of Android. Or may be indrrd sygic didn't make the right settings for the memory registration of this app (if that's something that they could do). As I see the oom values of this app are pretty high usually when I check.
Also about the voice: I have this option checked. But I never had an occasion when it spoke to me when it was killed. I'll check again. May be I didn't notice it...
Thanks for your comment on that. I'm surely going to test this.
Click to expand...
Click to collapse
You probably you haven't set the option to switch off GPS after a certain amount of time. Go to Settings /Battery management / Switch GPS off after... then move the slider until you see "never".
pentel1954 said:
You probably you haven't set the option to switch off GPS after a certain amount of time. Go to Settings /Battery management / Switch GPS off after... then move the slider until you see "never".
Click to expand...
Click to collapse
Thanks for trying to help. This option is set properly to "never" with me.
Hey all,
sorry for the late reply.
Sad news: Navigon dies in background as well. Just like Sygic, it doesn't always happen. But once you start using other apps actively it will eventually kill Sygic and Navigon silently. As someone already pointed out, it's likely an issue due to how Android works.
I had the relevant options ticked to never disable GPS or anything and it made no difference.
So you can use another app but you can't actively use your smartphone, e.g. I can have Poweramp run in foreground and switch tracks without Navigon dying (it also keeps talking to me via voice, even when the screen is turned off). But if you're not the driver and want to do more than just that then you'd need a second device or so.
Cheers,
Landorin
P.S.: at least now I could test both apps and personally, I'll stick with Navigon. Navigation by voice is so well developed that I don't need to look at the app while driving and if I do look at it, track assistant is better developed too (it shows you the motorway signs). With the app "Directory Bind" I was also able to move the whole big app + maps onto the external SD card.
Hopefully, the Sygic devs will listen to the community feedback and catch up in development over time.
Landorin said:
Hey all,
sorry for the late reply.
Sad news: Navigon dies in background as well. Just like Sygic, it doesn't always happen. But once you start using other apps actively it will eventually kill Sygic and Navigon silently. As someone already pointed out, it's likely an issue due to how Android works.
I had the relevant options ticked to never disable GPS or anything and it made no difference.
So you can use another app but you can't actively use your smartphone, e.g. I can have Poweramp run in foreground and switch tracks without Navigon dying (it also keeps talking to me via voice, even when the screen is turned off). But if you're not the driver and want to do more than just that then you'd need a second device or so.
Cheers,
Landorin
P.S.: at least now I could test both apps and personally, I'll stick with Navigon. Navigation by voice is so well developed that I don't need to look at the app while driving and if I do look at it, track assistant is better developed too (it shows you the motorway signs). With the app "Directory Bind" I was also able to move the whole big app + maps onto the external SD card.
Hopefully, the Sygic devs will listen to the community feedback and catch up in development over time.
Click to expand...
Click to collapse
Thanks for this elaborate report. It will be useful for many.
And yes, the navigation soft producers must make some conclusions.
If I find a good way to protect an app from being killed, I'll post it here.
You can try Fameelee - Family Locator app and you will never get such problems. 24/7 real time accurate gps location tracking, ability to see location history of your app members for the last 30 days, get notification once your app members reach some specific places (that you match by yourself), sms and call logs tracking and a lot of more. App is free and avaiable on appstore and google play market
This post is about getting great battery life for the average, every-day user. It is not inclusive or exhaustive, so it will reference other posts. What is talked about is what I did, the user-level stuff, explained in a more user-friendly fashion than some of the more diagnostic-focused posts out there (still invaluable reading, though).
Note: I originally wrote this for the Hyperdrive ROM on GS4 thread, but I've had many requests to break it out into a separate [GUIDE] post and update it here for ease of subscribing and discussing. Also note, that therefore, this should be considered sort of Android 4.2 specific and may not apply to all versions of Android. So, here it is. I'll link the old post to here shortly.
Preface
Okay, I'm writing this because I believe that @sbreen94 @eschelon @iceandfire @Imoseyon @TrevE and @ktoonsez 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 @sbreen94 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, validates it with experienced, community testers, and then releases it, all the time thinking, "well, the battery life sucks, but I'm gonna push this out anyways."??? 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” - so it can't POSSIBLY be an app! 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 these 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 Real World Battery Saving section of this post.
[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. Provided there aren't any seriously misbehaving apps on your phone, you should be able to get great results without becoming a Wakelocks, Alarms, Deep Sleep, etc., expert.
Real World Battery Saving
For those of you that don't want to read too much more about the analysis of apps, etc., to get to better battery life, here's the summary of what's in the section below:
Minimize screen brightness
Disable all Push
Disable all system sounds (Dialing keypad tone, Touch sounds, Screen lock sound, Haptic feedback)
Install Xposed Framework and use:
Greenify Donation (Experimental features)
NLPUnbounce
Greenify any app that you don’t need to notify you of things - Note: If you pay for Greenify Donation and use Xposed, you can still get alerts from any GCM-enabled app (look for the blue GCM icon next to apps in Greenify)
Greenify every Google app (except Voice and Hangouts, both of these may significantly delay or prevent proper message notification, despite being GCM-tagged in Greenify, and they seem to behave okay on their own)
Uninstall GMail (use any other client with IMAP)
Disable all GPS (enable as necessary upon use) Note: I really don't do this anymore. With apps under control with Greenify, I just leave my GPS on and let apps use it when necessary. I have noticed that GPS will stay active during Airplane mode, though, so as not to have my phone dead upon landing, I generally always turn off GPS when in the air.
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, Greenify, etc.). Note: With Greenify, I no longer worry as much about stopping apps/services from auto-starting. I do still use Xposed plugin BootManager to prevent certain apps from starting, mostly just to increase boot speed (or so I feel like it might). I don't use AutoStart Check at all anymore.
Continuing on with details...
Note: Required app functionality. You don't have to use these if you know another way to do it. But, to accomplish what I recommend, there are 3 key apps you absolutely must have. I'm not going to explain them all in great detail, as there are plenty of other places that go into great depth on all of them. The 3 essential apps that I use to increase battery by more than 50% are:
Lux (Pro - I'll explain why below)
Greenify
Xposed Framework
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
Update: After posting this, and getting a lot of questions/comments that Lux doesn't really rock like I think it does, I checked it out on a phone without using the Pro version. Okay, I agree, the free version really doesn't deliver. It doesn't poll right, and you can't really set your custom lighting scenarios and lock them in correctly without using Lux Pro. Basically, if you want to save tons of battery life without a lot of constant manual intervention, you're going to have to purchase Lux.
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.
Note about all mail client: If you have more than 2 or 3 e-mail accounts, Maildroid and all other IMAP clients I have tried get moved to Category 2. Basically, they start to keep enough Wakelocks that they keep the phone from going into Deep Sleep as much as I'd like. This is a difference of 1-3% per hour at idle, but if you're looking for 4+ hours screen time, then you need to Greenify them and just check e-mail manually.
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.
Google Play Store: There are plenty of apps and Android wakeups for the Play Store. I'm not worried about missing an update notification, or whatever else it might be sending my way. Greenifying it seems to have fixed the Google Play Services Alarms issue.
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)
Have Your Google and Your Battery
The Xposed module NLPUnbounce is awesome. I've given it a nice test, and it seems to perform excellent. NLPUnbounce allows you to use Google services as usual, including Android Device Manager features, like Remote Locate and Remote Wipe, but not do the crazy, crippling and disabling of Google Play Services like many guides have you do. It changes the polling rate of NLP (Network Location Provider) to something VERY reasonable. I haven't modified any of its settings, and it's reduced average idle consumption from ~4-5% to ~2-3%. I tested locating my phone and ringing it, all working.
Automatically Launching Applications
Not so much needed anymore. Just make sure you Greenify. For the "big things", use Xposed BootManager module.
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
@sbreen94 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!
I'm sure there's probably a more generic way of stopping/managing Media Scanner. Someone please let me know and I'll update this section!
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.
Thanks for the thread, Bill. Here are a few of my questions/comments:
Regarding Lux, I used it for a few days, but could never seem to get a setting that worked for me. Whether using periodic updating or any of the other modes, the brightness level always seemed to adjust either too frequently or too slowly. Then I started experimenting with night mode and it got even worse. Do you have any suggestions to a quick and simple setup that won't drive me insane?
In terms of greenifying different apps, I always make sure that my SMS app and alarm clock are not greenified, and I don't use any widgets on my homescreen, but what about apps like Better Battery Stats, Boot Manager (for Xposed) and Automagic (flow chart based automation app) that are monitoring events and automating my phone? Will Battery Stats stop recording data is I set it to hibernate? Will Automagic miss a trigger I've set if it's hibernating? I would like to greenify EVERYTHING that I know won't cause any issues, but notifications aren't the only thing happening in the background that I want to allow.
Then, expanding on the autostarts, I mentioned that I use the Xposed module Boot Manager. This doesn't seem able to handle all of the situations that you described, like apps being launched based on SD card state, network state, etc. Am I missing something in this app or will I need to go another route to get all the options you've descibed?
Regarding the SD media scanning, my current ROM is a very debloated lean and mean stock Touchwiz ROM that doesn't have a native way to disable media scanner like the AOSP ROMs I used to run. Is there an app that does ONLY this, as I prefer to use dedicated apps rather than giant monsters which can control tons of things I don't need.
Anyway, I already do a lot of the practices you're advocating here, but I'm always looking for ways to do things in a more efficient or streamlined way. Using Greenify, keeping the stock clock speeds, and making sure that nothing is syncing (I keep backgruond sync disabled, but use an Automagic flow to enable it periodically throughout the day and then turn it back off again), keeps my battery life pretty solid. Add to that Deep Sleep Battery Saver which automatically turns off my connections when the screen is off, but will periodically turn them back based on my preferences, keeps my battery level pretty much steady wheen the phone is idle.