[Galaxy S III Original Android Development] curiousrom:
S3 Lineage Battery Drain Troubleshooting & Optimization

Battery Drain Troubleshooting & Optimization

1- Right after you notice an abnormal battery drain: Settings > Device > Battery to spot which things could benefit from the tools below. A long press on the individual app or process will show you an estimated power use in mAh. Long press Battery saver and performance for different profiles options.

2- LineageOS awesome built-in tool: Settings > Personal > Privacy > Privacy Guard > 3 dots > Advanced > 3 dots > Show built-in apps or not > then swipe between Location, Personal, Messaging, Media, Device, Background (my favorite), Bootup (love that one too), Root access & Other.

You can optimize the power, RAM & CPU usage for each app (long press) by denying Notification, Vibrate, Keep awake, Run in background & Start at boot according to your needs.

You can create a direct shortcut to that Advanced Privacy Guard panel & much more with the Settings widget (long press on an empty space in Home pages).

3- Use the granddaddy of battery drain troubleshooting apps to see what is preventing deep sleep (Doze) on your device with BetterBatteryStats free XDA edition thread > read the If you need help chapter for the proper troubleshooting setup and use the HockeyApp in post #2 to get the most recent free XDA edition. Check also BetterBatteryStats very own FAQ.

4- LOS users have different opinions about the usefulness of an other classic Greenify in Lineage/Nougat but I like the analysis & individual app hibernation tool.

After testing it & not finding any benefit in LOS, I disabled > Settings > Aggressive Doze but in that panel in the bottom > Debug Options > Notification > toggle Show notification for recent doze durations is an interesting doze troubleshooting tool as seen in the attachment (Doze Records) & works even with Aggressive Doze disabled so you can compare. XDA Greenify Forum.

Some 16+ Lineage Battery Optimization Tips:

5- Speed up considerably the opening/closing of App tray, Statusbar curtain, swiping between Home pages, Recents app window, opening & closing of apps, etc and also save battery with: Settings > Developer options¹ > Drawing > set Window animation scale, Transition animation scale & Animator duration scale from 1x to Off. Try all those functions before tweaking those settings & observe the huge difference. You could also set to .5x to have some animations & fading while gaining some speed too.

¹: Settings > About phone > keep tapping on Build number until a pop up saying "Developer options enabled" appears. Go back to Settings > Developer options.

6- Blocking ads system wide for both apps & browsers is a big battery saver not only because it reduces data traffic but also because it reduces GPU & CPU work rendering those ads besides making pages loading much faster & enjoying ad free apps. The all time favorite if rooted is the tiny 5.45 MB AdAway because it achieves this by simply modifying the hostfile entries. After updating manually the host files you can even kill AdAway & disable Run in background and Start at boot in Settings > Personal > Privacy > Privacy Guard > AdAway and still benefit from hostfile blocking ads automatically.

If you are looking for a reason to ROOT your phone well that is a major one. Informative thread [GUIDE][COLLECTION] All About Ad-Blocking about other methods & browsers with ad blocking.

And/or use a firewall like AFWall+ for example to track & block individual apps.

7- That's an important one because it kills some background processes: Recents apps button (left of Home) > kill all the ones you will not be using for a while. You can observe that if you have a Task Manager app & observe the processes closing or in #2 Privacy Guard above. Also when finished with an app use Back button (right of Home) and only Home button for using again that app in a short while (which saves battery in that case) because Home does not fully close them.

8- Settings > Wireless & networks > Data usage > long press Data saver (Off or On) > Unrestricted data access (long press) to choose which individual apps you deny or give that permission when Data Saver is on. (screenshot)

Settings > Wireless & networks > Data usage > Cellular data usage > long press individual apps to control cellular data access: Background data, Unrestricted data access or Disable all cellular data access: sorry XDA app!(screenshot)

Lineage will automatically disable/enable Cellular data when using Wi-Fi or not.

In that same > Data usage panel > Wi-Fi > Wi-Fi data usage > long press on individual apps for more data choices including Wi-Fi data.

9- Radios: Settings > Personal > Location > Off > 3 dots > Scanning > disable Wi-Fi & Bluetooth scanning. If you really need Location enabled > Mode > Battery saving.

There is a debate about > Settings > Wireless & networks > Wi-Fi > gear (cog) > Configure Wi-Fi > Keep Wi-Fi on during sleep > Always/Only when plugged in/Never. Benefit or not to battery life may depend on your usage pattern (how often your turn the phone on) and when waking up the phone I find LOS slow to boot back up wifi. My setup is: Keep Wi-Fi on during sleep > Only when plugged in. I have Network notification disabled in that panel to prevent unnecessary scanning & battery drain.

Also Settings > Wireless & networks > More > toggle off NFC.

10- Settings > Personal > Accounts > 3 dots > Auto-sync data > global disable if you only need to sync just a few times a day OR enable/disable on the fly with Statusbar > Curtain > Sync tile. Or make more granular choices in each account.

11- Settings > Device > Display > these are personal choices but for max battery life I disabled Adaptive brightness (makes the light sensor work all the time & it boost or lower the brightness if there is a temporary shadow or ray of light over it), LiveDisplay > Display mode Automatic On, Automatic outdoor mode off, Rotation (enabled via quick Tile if needed in an app). Settings > Personal > Status bar > Brightness slider enabled.

Adjust the brightness to the minimum you really need as this is the major battery eater as seen in Settings > Device > Battery.

12- Settings > Device > Sound > optional disable Also vibrate for calls. Same panel > Other sounds > you can disable all of them (or some) & especially Vibrate on tap or reduce Vibrator intensity. The only one I enable is Charging sounds to confirm USB connection.

13- Settings > Device > Notifications > long press the apps annoying you and change the Importance level (minimum is Never show notifications from this app) and/or Minimum time between notification sounds. Note that for some apps Importance level adjust is disabled but can be done in-app or via Privacy Guard.

14- Disable auto-updates: > Play Store > Menu > Settings > disable Notifications & Auto-update apps. In Lineage > Settings > About Phone > LineageOS Updates > 3 dots > disable Auto updates check. Too bad these 2 apps do not have a check only when connected option. So manually check once in a while when connected to save battery.

15- Settings > Security > Smart Lock & On-body detection can be a serious battery eater if you enable Trusted places, device & face as it is using wifi, Bluetooth, camera & active sensors.

Settings > Suggestions > On-body detection will not go away even after 3-dots > Remove or using the arrow left of Suggestions to hide it. The workaround is to enable it once > Settings > Security > enable a Screen Lock if you don't have one > Smart Lock > enable > back to Security > Smart Lock > disable & delete all the different settings you enabled in it.

16- And the classic recommendations: uninstall unnecessary apps, disable Bluetooth, Wi-Fi, Sync, Location & enable Data Saver (or not) quickly according to your needs in Statusbar > Quick Tiles.

[IMG="Please contribute"]http://forum.xda-cdn.com/images/icons/icon2.gif[/IMG] Please contribute with your own battery savings tips, I will add them to this post with credit to you & quote the post but please trim it to keep the thread clean:

Guys, why quote over and over full long posts? Can't you just delete some content between