Possible NlpCollectorWakelock/NlpWakelock fix
Since day 1, despite factory resets and freezing bloat, my LG G2 has experienced some *insane* wakelocks around NlpCollectorWakelock and NlpWakeLock. We're talking about 2 hours every 10 hours or so of uptime, basically destroying my battery life.
Now, the simple fix for this is to turn off Wifi/Mobile Network Location, voila, phone deep sleeps, life is good. Except this doesn't fly for me, because I still want to use Google Now, and I can use it just fine on my S4 without this insanity.
To get a little better insight, metric-wise, I pulled Velvet.apk from /system/app and self-installed Google Search straight from the market (essentially Google Now) so that I could keep tabs on it in Greenify.
Turns out Google Search was running as much as 200 times per hour and causing wake-up ~5-10 times per hour. I could practically refresh and just watch the count go up and up.
So on a whim, being rooted and a little bit of a risk-taker, I used Titanium Backup and uninstalled Google Play Services. Null. Gone. Kaput.
Then when I launched Google Now again, it requested I nab Google Play Services from the market. So I did. I installed, rebooted.
To my surprise, in the last five hours since doing that, Google Search has run 12 times, and woken up 12 times. Better Battery Stats is reporting NlpCollectorWakeLock at 2 minutes and 8 seconds for ~5 hours uptime, and NlpWakeLock at 2 minutes and 43 seconds.
Anyone else want to take the dive with me and see if this gives them as significant of a before/after as it did for me? My phone is deep sleeping like a champ now and I really hope this keeps up.
tl;dr: Uninstall Google Play Services from /system/app using Titanium Backup, launch Maps or Google Now and then re-install Google Play Services from the market. Reboot. See if location service related wakelocks drop significantly. Rejoice if they do. Lament further if they don't.