Boost Battery Life by Taming Android's Background Location Checks
An app can request a wakelock to prevent your Android device from entering sleep mode so that it can sync data in the background. This obviously drains your battery, because instead of running in low-power sleep mode, your processor is fully activated while it performs its tasks.
Wakelocks are a necessary evil, though, since many of the apps and services that we enjoy simply could not function without them. For instance, the "NLPWakelock" is requested by Google Play Services, a core element of Android, and is tied directly to your phone's location reporting. So, approximately every 60 seconds, a CPU wake-up alarm is set off in order to place this wakelock into effect while your device updates its location data.
Because of its frequent alarm interval, this particular wakelock consistently ranks amongst the highest screen-off battery drains in Android. Up until now, the only way to reduce battery consumption from the NLPWakelock (and its partner in crime, NLPCollectorWakelock) was to disable Google Location Reporting. But that effectively kills Google Now, among other core apps and services, and for many of you, the gain in battery life just isn't worth the loss of functionality.
Realizing that the main problem here was the 60-second alarm interval, developer cryptyk created an Xposed module that reduces this interval to once every 4 minutes. By decreasing this number, rather than shutting off the tap altogether, Google's Location Services can still function properly and your CPU can sleep a bit longer. In the end, devices with Location Reporting enabled should see a nice bump in battery life.
Cryptyk's module is called NLPUnbounce, but it's not available directly from the Xposed Installer app yet, so you'll have to download it separately. That's easy enough, though, just tap this link from your device's web browser, and the installer file will begin downloading immediately.
UPDATE: NLPUnbounce is now called Amplify Battery Extender, and can be downloaded directly from the Google Play Store now, so you will not need to have "Unknown sources" enabled anymore to install it. You will still need the Xposed Framework, but if you don't have it yet, Amplify will install it for you.
When that's finished, tap the "Download Complete" notification to launch the installer, then press Install on the window that comes up next.
Once installation has completed, you'll see a notification from Xposed that tells you the module isn't activated yet and a reboot is needed. Use the Activate and reboot button on this notification to take care of both of these requirements.
When you get back up, the NLPWakelock will be dialed back to once every 4 minutes. There is no further setup required.
After testing this out on all of my household's phones, I can say with certainty that there is a noticeable improvement in battery life. But everyone uses their phones differently, so your mileage may vary, of course.