[Mod][Xposed] Amplify - Battery Extender - Control alarms, services, and wakelocks

Search This thread

cryptyk

Senior Member
Jul 2, 2007
858
3,992
@fenrir_ac - Thank you for the logcat and detailed report. I plan to switch from files to a database. I think that may fix your problem. It might take me a couple of days to get that done; I want to get the alarms and services working first as it looks like the current build is working for most folks. Stick with me and I'll get you sorted.

@cryptyk
Seems like AudioIn, Icing and SyncLoopWakelock are not blocked by Amplify. Anyone else experience this?

Very weird firstly I installed 3.3.8b its working but after uninstall and reinstall then its not working not showing wakelocks
Update:- Now working wakelock showing but doesn't block

For the folks who say it's not blocking, I just realized that I'm not refreshing the block settings when they change. I'm willing to bet that if you setup your blocks and then reboot, they'll work.

Thanks everyone for testing! It looks like it's basically working for most people, or at least that we're heading in the right direction. I'm going to clean everything up, add the functionality for alarms and services, then release an update. After that, I'll go back and move to a database as well as start tackling individual bugs that people see.

Thanks again for your patience!
Ryan
 

The_Keeper86

Senior Member
May 15, 2015
881
216
nVidia Shield Android TV (2017)
@fenrir_ac - Thank you for the logcat and detailed report. I plan to switch from files to a database. I think that may fix your problem. It might take me a couple of days to get that done; I want to get the alarms and services working first as it looks like the current build is working for most folks. Stick with me and I'll get you sorted.





For the folks who say it's not blocking, I just realized that I'm not refreshing the block settings when they change. I'm willing to bet that if you setup your blocks and then reboot, they'll work.

Thanks everyone for testing! It looks like it's basically working for most people, or at least that we're heading in the right direction. I'm going to clean everything up, add the functionality for alarms and services, then release an update. After that, I'll go back and move to a database as well as start tackling individual bugs that people see.

Thanks again for your patience!
Ryan
Looking forward to the update! Will it still need to be set as a system app like some have been saying?

Sent from my LG V20 using XDA Labs
 

ATP4

Senior Member
May 5, 2008
356
349
France
Hi everyone,
Attached is another release that should fix stability problems. The caveats with this release:
- It only handles wakelocks. Alarms and services will be easy after we get the wakelocks working
- I've completely re-written the preferences and statistics, which are two core parts of Amplify. There are some improvements: Stats now refresh live in the UI. The code is simpler. And it should work with SELinux enforcing!

If you encounter any instability, a logcat would be awesome. Otherwise, any feedback you have is greatly appreciated!

Thanks,
Ryan

I just tested.

Config test:
- Oneplus 3
- Resurrection Remix 7.1
- EX Kernel
- Magisk last stable version
- Xposed 88.1 Arm64 (official branch)
- Setlinux: normal, no "permissive"

Once rebooted, the smartphone runs well for a minute, Amplify looks Ok and counts the wakelocks, but after one to two minutes the smartphone completely freezes and forces to force the smartphone again.

So I uninstalled it. Waiting for a new test version.

Unfortunately, the freeze arrives too fast and completely paralyzes the phone. I have to keep the button on / off a few tens of seconds to restart the smartphone and everything is frozen during that time).


Always with the same configuration, this new alpha version installed early this morning and no problem to report at the moment: it's really stable (zero freeze, zero AC), the smartphone remains fluid and counting wakelocks seems to work well. I still let the alpha run for a few days before a new feedback. Nice work @cryptyk , it's very promising for the future.
 

Attachments

  • Screenshot_20171021-170643.png
    Screenshot_20171021-170643.png
    126.1 KB · Views: 516
Last edited:

RASTAVIPER

Senior Member
May 2, 2011
3,721
816
Hi everyone,
Attached is another release that should fix stability problems. The caveats with this release:
- It only handles wakelocks. Alarms and services will be easy after we get the wakelocks working
- I've completely re-written the preferences and statistics, which are two core parts of Amplify. There are some improvements: Stats now refresh live in the UI. The code is simpler. And it should work with SELinux enforcing!

If you encounter any instability, a logcat would be awesome. Otherwise, any feedback you have is greatly appreciated!

Thanks,
Ryan
Working fine for my OP3T 7.1.1 with Magisk.
First I had converted the app to system app.

Unleashed by ONEPLUS 3T rooted
 

cryptyk

Senior Member
Jul 2, 2007
858
3,992
I think support for SELinux and Nougat calls for a major version change! Amplify version 4.0.0 attached!

This version should have full SELinux support for wakelocks, services, and alarms.

Consider this the first official version for Nougat. I'll continue to optimize and fix bugs in incremental official releases. The next major refactor will be from a file configuration (that worked well when files could be shared across processes) to a database configuration (that's better since the stats aren't used directly on the Xposed side). Once I see that it's working well for a couple of days, I'll update the OP, Xposed repo, and Play store. One thing that would help a lot is if someone with a Lollipop or Marshmallow device could test this new version to make sure I didn't break anything!

Thanks for being patient and helping test over the last week. Enjoy your new battery life on Nougat!

Thanks,
Ryan
 

Attachments

  • AmplifyAndroid-4.0.0.apk
    1 MB · Views: 2,219
Last edited:

tdas777

Senior Member
May 13, 2015
91
7
Moto X Play
Xiaomi Redmi 4X
I think support for SELinux and Nougat calls for a major version change! Amplify version 4.0.0 attached!

This version should have full SELinux support for wakelocks, services, and alarms.

Consider this the first official version for Nougat. I'll continue to optimize and fix bugs in incremental official releases. The next major refactor will be from a file configuration (that worked well when files could be shared across processes) to a database configuration (that's better since the stats aren't used directly on the Xposed side). Once I see that it's working well for a couple of days, I'll update the OP, Xposed repo, and Play store. One thing that would help a lot is if someone with a Lollipop or Marshmallow device could test this new version to make sure I didn't break anything!

Thanks for being patient and helping test over the last week. Enjoy your new battery life on Nougat!

Thanks,
Ryan
Thanks a ton for your efforts!
 

shadowbone

Senior Member
Oct 6, 2017
89
22
I think support for SELinux and Nougat calls for a major version change! Amplify version 4.0.0 attached!

This version should have full SELinux support for wakelocks, services, and alarms.

Consider this the first official version for Nougat. I'll continue to optimize and fix bugs in incremental official releases. The next major refactor will be from a file configuration (that worked well when files could be shared across processes) to a database configuration (that's better since the stats aren't used directly on the Xposed side). Once I see that it's working well for a couple of days, I'll update the OP, Xposed repo, and Play store. One thing that would help a lot is if someone with a Lollipop or Marshmallow device could test this new version to make sure I didn't break anything!

Thanks for being patient and helping test over the last week. Enjoy your new battery life on Nougat!

Thanks,
Ryan
Now we're talking. :p
Works like a charm man. Fantastic job.
 

Hadi99

Senior Member
Jun 16, 2015
305
95
Thank you for persisting to update the app, however I haven't managed to get it work on Fulmics 4.5 rom (Based on LG UI) running Android 7.0 and system Xposed (Already on permissive SELinux, tried moving it to system app but still didn't work). All I get is in the attached screenshot,
 

Attachments

  • Capture+_2017-10-21-22-42-57.jpg
    Capture+_2017-10-21-22-42-57.jpg
    209.4 KB · Views: 773
  • Like
Reactions: DeProf

freeop

Senior Member
Aug 30, 2011
381
160
US
Hi everyone,
Attached is another release that should fix stability problems. The caveats with this release:
- It only handles wakelocks. Alarms and services will be easy after we get the wakelocks working
- I've completely re-written the preferences and statistics, which are two core parts of Amplify. There are some improvements: Stats now refresh live in the UI. The code is simpler. And it should work with SELinux enforcing!

If you encounter any instability, a logcat would be awesome. Otherwise, any feedback you have is greatly appreciated!

Thanks,
Ryan
Working fantastic. Turned off SELinux and Amplify is chugging along just fine. When I upgraded to the 4.0.0, it saved all my settings and I am a happy camper. Thanks @cryptyk for your hard work and dedication to this app.
286fe5dff1f4ea97f5dbfe343ae230ed.jpg
999af72c8d327dfd32f2315ed034e8dd.jpg


Sent from my SAMSUNG-SM-G935A using Tapatalk
 

Fif_

Senior Member
Jun 5, 2013
1,191
1,313
Google Nexus 10
Google Nexus 4
4.0.0 seems to be working fine on OnePlus 5, OOS 4.5.13, Magisk 14.3 and Xposed 83.1.
I wanted to give the dev another donation as I'm a long time Pro user, but the Play donation links fail all the time. I get the error attached.Screenshot_20171021-120617_01.jpg

Edit: looks like I wrote too soon. After one hour running I noticed an exception-fest going on in the Xposed log file. Uninstalling Amplify since the exception is happening in the power manager, and please find the xposed log attached.
Grr, stupid Tapatalk won't allow me to attach a .log nor a .zip file. Brb with the log.
Edit #2: Xposed log now attached.
 

Attachments

  • tmp_27502-xposed_error_20171021_130025.log1466303050.zip
    26.9 KB · Views: 16
Last edited:

cryptyk

Senior Member
Jul 2, 2007
858
3,992
Thanks for confirming everyone! I'm glad we got it sorted out!

Thank you for persisting to update the app, however I haven't managed to get it work on Fulmics 4.5 rom (Based on LG UI) running Android 7.0 and system Xposed (Already on permissive SELinux, tried moving it to system app but still didn't work). All I get is in the attached screenshot,

Thanks for letting me know. Can you grab a logcat for me? Best way to do that is install adb on your computer. Verify it's working by trying the following from a command prompt:
Code:
adb logcat
. If you get a bunch of output, that means it's working. Hit ctrl-c to stop the output.

To capture the logcat, run the following from a command prompt:
Code:
adb logcat > logcat.txt
.

Then go to Xposed, click the menu at the top right, and choose soft-reboot. After the device reboots, open Amplify and let it sit for about 20 seconds, then hit ctrl-C on your command prompt to stop the logcat. Post the logcat.txt file online and I'll take a look.

4.0.0 seems to be working fine on OnePlus 5, OOS 4.5.13, Magisk 14.3 and Xposed 83.1.
I wanted to give the dev another donation as I'm a long time Pro user, but the Play donation links fail all the time. I get the error attached.View attachment 4309908

First, I really appreciate the gesture. It makes a big difference when I can repay my family for the time I spend away from them on projects like this with a night out together!
The reason it's failing is because the 4.0.0 version isn't in the Play Store yet. After I release it, donations will automatically start working again.

Thanks,
Ryan
 

Potato997

Senior Member
May 20, 2016
1,309
590
Hello,
I installed the last update 4.0.0 but wakelocks/alarms/services are detected but not blocked
Setup: Xiaomi Mi5, Paranoid Android 7.3, Magisk 14.0, Xposed official 88.1
I attached a log I tried to catch, would you mind to take a look
Thank you

Edit: I got another logcat following your suggestions https://drive.google.com/open?id=0B-GH3HF8ItvsTnZpc1liTG1Ud28
 

Attachments

  • Log_2017-10-21_22-35-05.txt
    55.7 KB · Views: 12
Last edited:

Fif_

Senior Member
Jun 5, 2013
1,191
1,313
Google Nexus 10
Google Nexus 4
Thanks for confirming everyone! I'm glad we got it sorted out!



Thanks for letting me know. Can you grab a logcat for me? Best way to do that is install adb on your computer. Verify it's working by trying the following from a command prompt:
Code:
adb logcat
. If you get a bunch of output, that means it's working. Hit ctrl-c to stop the output.

To capture the logcat, run the following from a command prompt:
Code:
adb logcat > logcat.txt
.

Then go to Xposed, click the menu at the top right, and choose soft-reboot. After the device reboots, open Amplify and let it sit for about 20 seconds, then hit ctrl-C on your command prompt to stop the logcat. Post the logcat.txt file online and I'll take a look.



First, I really appreciate the gesture. It makes a big difference when I can repay my family for the time I spend away from them on projects like this with a night out together!
The reason it's failing is because the 4.0.0 version isn't in the Play Store yet. After I release it, donations will automatically start working again.

Thanks,
Ryan
Thank you for your reply. While you were typing, I was editing my post to report problems. See three posts above, #7722.
 
Last edited:

cryptyk

Senior Member
Jul 2, 2007
858
3,992
Thank you for your reply. While you were typing, I was editing my post to report problems. See three posts above, #7722.

I get so excited every time I release a x.0.0 release because I love round numbers. I'm always hopeful that it stays at x.0.0 for a long time. It never works out :)

Here's a new version that fixes the problem.

Thanks for catching it early!
Ryan
 

Attachments

  • Amplify-4.0.1.apk
    1 MB · Views: 195

Fif_

Senior Member
Jun 5, 2013
1,191
1,313
Google Nexus 10
Google Nexus 4
I get so excited every time I release a x.0.0 release because I love round numbers. I'm always hopeful that it stays at x.0.0 for a long time. It never works out :)

Here's a new version that fixes the problem.

Thanks for catching it early!
Ryan
Great, no more backtraces in the Xposed log with 4.0.1.
One thing got broken though, the activity when editing a wakelock is showing an excessive right margin, see:Screenshot_20171021-150333_02.jpg

And I'd also like to report another long-standing bug: the Icing wakelock is reported as safe to block, but blocking it causes random and regular GMS crashes with recent versions of Play Services (like anything since one year ago).
 

cryptyk

Senior Member
Jul 2, 2007
858
3,992
Hello,
I installed the last update 4.0.0 but wakelocks/alarms/services are detected but not blocked
Setup: Xiaomi Mi5, Paranoid Android 7.3, Magisk 14.0, Xposed official 88.1
I attached a log I tried to catch, would you mind to take a look
Thank you

Edit: I got another logcat following your suggestions https://drive.google.com/open?id=0B-GH3HF8ItvsTnZpc1liTG1Ud28

That's a great logcat. Unfortunately, I don't see anything wrong. I'l need to create a version with more logging to see what's going on. I'm not going to be able to get to that for a couple of days though - I have some business travel early this week.

Perhaps try to uninstall, reboot, reinstall, reboot, and see if that works. If not, we can take care of it soon.

Thanks,
Ryan
 

Top Liked Posts

  • There are no posts matching your filters.
  • 711
    UPDATE:
    Hi everyone,

    I want to share some news. I received an email from Google yesterday letting me know that Amplify has been suspended from the Play Store because it changes the way that other apps work, which is against their policy. Google is enforcing this policy much more recently than they had in the past. Numerous other apps have also been taken down: CyanogenMod's installer, LuckyPatcher, Magisk Manager, Viper4Android, etc. I respect Google's policy on this and understand that the Play Store is evolving and needs to be "safe for Grandma" rather than a tool for Power Users like ourselves.

    After some consideration, I think that Amplify should remain available. Google's implementation of Doze, Coalesced WakeLocks, and user pressure to deliver apps that don't overuse the battery have made Amplify less critical than it was in the past. Still, there are users on older phones and power users who want to have granular control over their wakelocks and Amplify fills a valuable niche for those people. I'm still considering how to make sure that Amplify remains available for people who need it. I need to find a couple of hours this week to recompile so that it will work without the Google Play Services and decide where to host it. Amplify has always been, and will always remain, an open source project. You're always welcome to download the source yourself from GitHub.

    This Amplify thread has over 8,200 posts and over 2 million views. It's the 5th most viewed thread of all-time in the Xposed Modules forum. The app had almost 1 million downloads and a Play Store rating of 4.13 stars. I originally built Amplify for myself because I was frustrated with two particular wakelocks that were misbehaving. I never dreamed it would grow the way it did. I appreciate all of your support throughout the years.

    Here's to better battery life!
    Ryan

    --- Original Post Follows ---

    Amplify puts you in control of how your device uses your battery by controlling how often your device can wake up, and how long it can stay awake. Use the recommended settings for easy battery savings, or dig in and customize every alarm, service, and wakelock on your device.
    Here are some highlights:
    • A beautiful design, inspired by Material Design principles. Your choice of Light or Dark.
    • A stable blocking engine
    • Comprehensive measuring of the time wasted and time saved because of alarms and wakelocks
    • Support for Nougat and SELinux.
    • A growing list of descriptions of the alarms, services, and wakelocks in plain English (and other languages!)
    • A Pro package that lets you control any alarm, service, or wakelock on the device
    • Translated by the community into Chinese, Czech, Finnish, French, German, Greek, Italian, Japanese, Malay, Portuguese, Polish, Romanian, Russian, Spanish, and more
    • Tasker integration
    • An open source codebase so you can see how it works, or build it yourself

    4.0.1 is the latest version, available in the Google Play Store.

    You can learn more at Amplify for Android.

    The In-App purchases allow you to unlock the Pro package that lets you customize the alarms, services, and wakelocks on your device. Without the pro package, you can control the worst battery hogs: NlpWakelock, NlpCollectorWakeLock, ALARM_WAKEUP_LOCATOR, and ALARM_WAKE_ACTIVITY_DETECTION.

    May you have a long [battery] life!
    Ryan




    Watch this excellent review by Chris Nacca for an introduction, and to answer most of your questions

    FAQ for problems
    I donated but Amplify doesn't recognize my donation
    This is frustrating. The reason is because of the way that the Play Store handles In-App-Billing when apps are installed from different places (like sideloading, Xposed repo, and sometimes from the Play Store app). The fix is usually simple:
    1) Uninstall Amplify from your device
    2) Go to the Play Store on your computer and install Amplify from the Play Store web interface.
    For some reason this tends to link the accounts more reliably than installing from the Play Store on the device.

    It won't let me donate, or I see an error message when trying to donate
    There are a few reasons this happens. It's always because Google reports that In App Billing isn't available for your device. Here are the causes I've seen:
    • You installed Amplify from the Xposed installer instead of from the Play Store, which causes problems due to a bug in Google Play
    • You have the Play Store or Google Play Services Greenified
    • You have blocked some part of the Play Store from running with Service Blocker, or another XPosed module
    • You purchased Amplify with a different Google account than the one you're using now
    • You have Lucky Patcher installed
    • You're from a country where In-App Billing is not available (not common)
    • You need to update your Google Play Store or Google Play Services (not common)
    • I just did an update to Amplify in the Play Store and it takes a couple of hours for Google to update their servers with the new version (not common)

    I had Lucky Patcher installed. I uninstalled it but Amplify still doesn't work
    Lucky Patcher makes permanent changes to your system. Simply uninstalling it doesn't work. Here's something to try, courtesy of @mikeezy187:
    - Uninstall lucky patcher
    - Go into settings
    - Go to apps
    - Go to Google Play Store
    - Clear Cache and app data
    - Uninstall Google Play Store updates and it will ask you if you want to restore Google Play Store to its stock settings
    - Click Yes
    - Reboot

    Amplify gets stuck on the screen checking for Xposed, or says Xposed isn't installed
    If you're positive that Xposed is running properly, and that Amplify is checked in the Modules list, and you've done a soft reboot:
    When it gets stuck, swipe from the left side of the screen, choose Settings, then push the back button to bypass these checks.

    Additional details
    I have a bug or feature request.
    Cool. Thanks for helping out! Please go file the issue here, on GitHub. You can also upvote bugs and feature requests there.

    I'd like to help with translations.
    That would be AWESOME. Please check here to get started.

    Why is Play Services such a battery killer:
    1) If Google Location Services are turned on, it sets an alarm to wakeup every 60 seconds, check the network location, and broadcast ALARM_WAKEUP_LOCATOR.
    2) Everytime ALARM_WAKEUP_LOCATOR fires, Google Search receives the broadcast and grabs an NlpWakeLock and NlpCollectorWakeLock.
    3) Those wakelocks hold the keep the device on for 5-15 seconds. This means that the device is actually awake for about 15 seconds per minute, or 25% of the time!

    What are the consequences of reducing alarm and wakelock frequency?
    It depends on the alarm. The defaults are well tested and don't have negative impacts. They just save battery life. If you start blocking unknown alarms and wakelocks, it may stop things from working. You can always disable the module at boot to fix things. The latest knowledge base was created by @1ceb0x and is being maintained by the community. I regularly include their findings in Amplify. You can find the knowledge base here: https://docs.google.com/spreadsheet...0gYFBe1K8_R3NBloP4Q1FgpIU/edit#gid=2072742181

    I blocked something and now my device won't boot!
    To disable Xposed during boot, you have to repeatedly tap one of the hardware buttons (Power, Volume, or Home) on your device during startup. During boot, your device will vibrate twice when it detects the first key press. You'll then have five seconds to press that same button four more times, with each keystroke producing a short single vibration. After ending with a long vibration, your device will disable and prevent most of Xposed's actions, allowing you to go back to Amplify settings and fix what you broke.

    What do the numbers mean, and how do I use this thing?
    Check out this awesome intro video by Shiwak that explains the basics of how Amplify works.

    I still get a ton of Wakelocks showing up in BetterBatteryStats
    Short version: Those aren't really wakelocks. You can ignore them. Please go check in WakeLock Detector, and you'll see that they don't show up there.

    Long version: Admittedly, I don't know *exactly* why they're showing up in BBS, but not in Wakelock Detector. I did a ton of testing today and can confirm that my device showed 988 NlpWakeLocks in BBS, but only 20 in WLD. During that time, I also had logcat running and a custom hook in the Android stats code. Logcat didn't show any of those phantom wakelocks, the Android stats code doesn't record them, Amplify doesn't see them, and WLD doesn't see them. BBS is [awesomely] open source, so I went digging a bit. I don't see anything obviously wrong in the code, but for some reason it's getting the counts wrong. Here's the interesting piece: It's getting the TIME SPENT in the wakelocks correct. That's why you see something absurd like 2000 wakelocks and only 6 seconds of lock time. If it were really that many wakelocks, your lock time would be much, much higher.

    Where's the source code?
    It's here: https://github.com/rsteckler/unbounce-android
    A couple of things:
    1) Don't judge. I need to do some cleanup, but wanted to post the repo early so people can take a look at what it does. :)
    2) Pull requests are welcome.

    I didn't read the FAQ
    The band will not perform unless there is a bowl of M&Ms backstage, with all of the brown ones removed.

    Where's the change log?
    It's here: https://github.com/rsteckler/unbounce-android/commits/master

    What are the best settings?
    There is no "best" for everyone because every device is different. Check out this helpful thread from @Celestial Fury for a guide that walks you through an awesome baseline, and gives you advice on how to tune further.

    What's an alarm vs. a wakelock, and how are they related with regards to Nlp (Network Location Provider)?
    An alarm wakes your device from deep sleep, scheduled using the RTC (Real Time Clock). For example, Google Play Services schedules an alarm every 60 seconds to wake up the device with the ALARM_WAKEUP_LOCATOR alarm. That's why I didn't try to stop the wakelocks at first, but instead tried to stop the alarms. I don't even want the device to wakeup in the first place!
    Once the alarm fires, the Nlp service wants to get your location and send it back to google. This requires keeping the device awake for a few (5-15) seconds. To keep the device awake, Google Play Services grabs the NlpWakeLock. This is the second point we can modify the system, but it only puts the device back to sleep once it's already awake.
    A couple of other things: This is why I recommend starting with just the alarms. It's less intrusive, and stops the device from waking up at all. Most people will probably be fine with the settings 240, 240, 0, 0. There are other things that can cause an NlpWakeLock, though, including third party apps. If the alarms don't work by themselves for you, you can also slow down the frequency of the wakelocks directly in the settings.

    Are there any ads in Amplify?
    Nope. Never have been, and never will be.

    What information do you collect about me?
    When you launch the UI, I use Google Analytics to collect some information about your device. Specifically, the version of Amplify that you're using, the type of device you have, what country you're in, the version of Android you're using, etc. I use this information to make the app better. For example, it tells me how many people have the app installed in each country. This helps me know which language translations will be the most helpful. It also helps me know which versions of the app people will be upgrading from so I can make those transitions smooth. In my Google Analytics account, I have the options to share your data with Google and Third parties turned off. You can also read Google's Privacy Policy if you want to know how they use the data.

    Do you sell my data?
    Nope. Never.
    The data collected for Google Analytics is only used to make the app better. I don't do anything else with it and no third parties get access to it.

    How do I know that the code on GitHub is actually the code you push to the Play Store?
    I don't think there's a way to verify that. You just have to trust me. If that makes you nervous, I encourage you to build the GitHub code yourself.

    Can I get Pro features by donating via PayPal, Bitcoins, or something else?
    Sadly, no. The Google Play Store Terms of Service require that I use the Google Play Store IAP system to collect donations. I also don't plan on distributing non-Google IAP versions outside of the Play Store because of the effort involved. I'd rather spend my time making Amplify better, instead of maintaining two copies of the code and writing a new donation system. Sorry if you're one of the people affected by that.

    Thanks, and let me know if it works for you!
    Ryan
    63
    Hi all,
    Really exciting news today. Version 1.1.5 is now released. It's really a whole new app, and a whole new ballgame. You are now in control of how your device uses your battery.
    Here are some highlights:
    • A brand new design, inspired by L Material Design principles
    • A much more stable blocking engine
    • Comprehensive measuring of the time wasted and time saved because of alarms and wakelocks
    • A growing list of descriptions of the alarms and wakelocks in plain English (and other languages coming soon!)
    • TONS of bug fixes
    • A new Pro package that lets you Unbounce any alarm or wakelock on the device
    • As always, an open source codebase so you can see how it works, or build it yourself

    I want to thank everyone for the testing, bug reports, suggestions, and offers of help. I especially want to thank those that donated. The dollar you sent (or more from the really generous contributors) really makes a difference. I get to go enjoy a nice dinner with my girlfriend because of you. That generosity doesn't go unnoticed.

    I'm showing my appreciation of you folks that donated by including a new Pro package in version 1.1.5. The Pro package lets you control any alarm and any wakelock on your device. This opens the door for massive, customized battery savings. It's also potentially dangerous, so please read up on how to disable Xposed at boot in case you block something important. The Pro package is already enabled for anyone who donated previously, and will automatically activate itself for anyone who donates going forward. Again, a huge THANK YOU for the support, and I hope you enjoy the new flexibility.

    The original features of the module are, and always will be completely free. This means you can control NlpWakelock, NlpCollectorWakeLock, ALARM_WAKEUP_LOCATOR, and ALARM_WAKE_ACTIVITY_DETECTION without the Pro package.

    The last thing I want to address is the fact that the app is open source. Yes, this means that you can download the source code, disable the donation system, and get the Pro features for free. I am 100% supportive of people doing that. You can also look at the source code and easily find ways around the donation system within the original APK. I'm fine with that, too. I only ask two things:
    1) Please don't publish the modified, "cracked" version. That's not cool. Also, please don't publish instructions for how to bypass the security. Let other people figure it out for themselves as a learning experience.
    2) If you have the time and skills to recompile your own version of the module, please consider using that energy to contribute to the project. Go fix a bug or two, or add a new feature. Earn your keep ;)

    You can find the download in the Play Store, in the OP, in the Xposed Repo, or on the BitBucket site.

    May you have a long [battery] life,
    Ryan
    62
    Oh. My. God.

    I had no idea this would blow up the way it did. Otherwise, I probably wouldn't have released it on my way out the door!

    First, thank you all for all of your feedback and bug reports. Sorry I wasn't here to fix them quickly. Special thanks to people, like 1ceb0x and others, that helped sort through the facts and present FAQs for people.

    Finally, a HUGE thank you to xordos for cloning the repo and providing some releases! So awesome. Thank you for the help!

    I'm going to read through the thread and add some Q&A to the Faq. I'll also elaborate a bit on how the Alarms and Wakelocks interact, and how to set things up for your own device. I'll also try to get a bugfix release out early tomorrow morning, but that's basically just integrating the work that Xordos has done.

    Thank you all for the response. I'm so happy that this works for you as well as it did for my girlfriend's phone, which was the inspiration for this work :)

    Thanks,
    Ryan (cryptyk)
    58
    Hi all,
    Just a quick teaser on some things I'm working on. Still a ways out, but wanted to share some progress.


    Thanks,
    Ryan
    58
    I think support for SELinux and Nougat calls for a major version change! Amplify version 4.0.0 attached!

    This version should have full SELinux support for wakelocks, services, and alarms.

    Consider this the first official version for Nougat. I'll continue to optimize and fix bugs in incremental official releases. The next major refactor will be from a file configuration (that worked well when files could be shared across processes) to a database configuration (that's better since the stats aren't used directly on the Xposed side). Once I see that it's working well for a couple of days, I'll update the OP, Xposed repo, and Play store. One thing that would help a lot is if someone with a Lollipop or Marshmallow device could test this new version to make sure I didn't break anything!

    Thanks for being patient and helping test over the last week. Enjoy your new battery life on Nougat!

    Thanks,
    Ryan