Update 09.12.17: The methods below may not fully work on the latest OS versions. There is an ongoing discussion in the last pages so I hope it gets cleared out eventually, sadly I've been busy with my studies and haven't touched my phone since initially making this thread (it's on OOS 4.0.2). I write this just to make sure I don't waste your time accidentally, so please check the latest replies if you're on newer OS versions.
Hello everybody,
*the undermentioned methods and app(s) require root*
I have asked you guys in the AKT thread if you would like to see a small tutorial on how to stop the constant "com.google.android.gms/.measurement.PackageMeasurementService" and "net_scheduler" wakelocks that might or might not be responsible for the device waiting longer than it should before dozing off.
Please keep in mind that this method does work for me, and might or might not work for you, as everybody uses different things/apps so in case you see unwanted behavior, just revert back and sigh that the method has failed you.
I am not responsible for any hardware-/software damage that may occur upon using these settings.
So, now that we've got all the generic stuff out of the way, first few words about why this might bother you:
1) You don't like your device doing stuff you didn't make it do.
2) You want to minimize wakelocks
3) You're here because you just saw the two beforementioned wakelocks and already decided you want to get rid of them.
So, regarding the first one, all I can say is I got the method from this reddit post , which briefly explains which services are doing the waking and what they are. Starting with "At the heart of Firebase is Firebase Analytics, a free and unlimited analytics solution. .." got me raising an eyebrow, as I don't like handling control of my device to other people, without me even knowing.
UPDATE: I have merged the two approaches into just using one app and making the changes on a global level, so you can just do them in like 5 minutes and forget about it, but in case you have problems with disabling package measurement you can also check the hidden text just below for instructions using another app, which was basically "the old way".
So to get rid of the "snooping", as already described in that post, you need to download MyAndroidTools.
Disclaimer: Disabling some services/receivers may "crash" the app. I found it is normal, just go back to where you were and check if you managed to disable the thing you wanted, if yes, then it was successful.
1. Open the app
2. Click on the top left to open the panel, click on Broadcast Receiver.
3. On the menu that opens go to the right column named System. Click search on the top right, type "Play" and choose the Google Play Services option.
4. In the search bar there type at least "ana" and disable the two found results with the names "AnalyticsReceiver" and "AnalyticsSamplerReceiver"
5. Hit x and search again for at least "meas". You will see three results with the names "AppMeasurementInstallReferrerReceiver", "AppMeasurementReceiver" and "PackageMeasurementReceiver*". Disable all three.
****Update 15.02.17*** Apparently this one resets every once in a while, I blame this again on Google's efforts to have their spying on, but anyways. Go to services->system->Google Play Services->search "meas"->disable both "AppMeasurementService" and "MeasurementBrokerService". The third one (PackageMeasurementService) will restart too so don't bother. This should do the trick though.
6. There was discussion about "Campaign Tracking" . I only found it in the same System menu, in Android Pay, by searching at least "cam" you get the result "CampaignTrackingReceiver". Disable it if you feel you want to. I don't use Android Pay and cannot say if it breaks something there, but otherwise have it disabled and haven't noticed any problems so far.
7. Search for Google Play Store in System. In that option, search for at least "app" and disable "AppMeasurementReceiver". Hit x and search for at least "fir", then disable the two results with names "FirebaseInstanceIdInternalReceiver" and "FirebaseInstanceIdReceiver"
8. Done. All the setttings are now global for any sort of app measurements, as far as I know.
This is the "old way" of dealing with app measurement. If you have done the steps above just ignore (hide) this part and continue with disabling net_scheduler below.
So to get rid of the "snooping", as already described in that post, you need to download Root Package Disabler or equivalent alternative.
ATTENTION: As per the last version of the app, I see there might be a bug which reverts some settings when you use the search bar, so please try and find the services by hand in stead of searching, as it is more reliable.
1. Open the app
2. Start with the left-most pane, e.g. "Installed". There you can see all your installed apps
3. Click on the first app on the list, it will display a small menu. Apps that use services will have the bottom-left option named "SERVICES" available, click there. This will take you to the services list that this app uses.
4. Click on the searching icon on the top-right in order to filter the services we need disabling.
5. Write at least "appm" . If the AppMeasurementService is used by this app, it will now be displayed.
6. Tick that off (the switch will turn gray)
7. Hit x, and search again for at least "fireb". This will display all services that use the Firebase SDK. You may also check under the name of the service and see the word is contained in the "executable name", so it might not always have "an official" name that states Firebase, but still use one of their "executables" (sorry for lack of detail)
7.1 Check for any other services that have "analytics" in their description, although I haven't checked if this stops something useful, but I doubt it.
8. When you're done with the current app, it will no longer call these services and cause wakelocks as long as the services remain stopped. To my experience the settings stay after reboot, it's just the above mentioned bug you have to keep in mind since it happened to me now while making the guide, and I know it came with the latest update.
9. Go back to the installed pane and maybe tick on the star next to the app in question. It will be added to the "favourite" list where you can have all those apps and don't bother to search them again if needed.
10. Repeat from step 1 for the next app and go through all your apps. If not you will still get calls to this service from the apps that still have these services on. Also a reminder here, you have to remember and check every new app you install, as most apps do have the service enabled.
11. After you're done with all apps in "Installed", check out bloatware (I think I haven't found anything there, but it's worth checking).
12. "System" apps that I know have some of those services: Calendar, (probably) Chrome (I have that disabled so dunno), Drive, Duo, Gboard, Google Play Services, Google Play Store, Google VR Services.
Here are two pictures how an app's services list looks like, and one with some of the services disabled:
all services on
some services off
After doing these steps, you should charge your battery to 90% to reset the battery statistics and you should see that the "com.google.android.gms/.measurement.PackageMeasurementService" wakelock no longer occurs (or stays really, really low, and not thousands like before). If you still have it after all this, then you probably have an app you haven't disabled the services for.
The second approach will get rid of the "net_scheduler" wakelock. Thanks to @denon480 for the idea, it's post #34 in this thread It involves installing (again) MyAndroidTools or equivalent alternative.
1. Open the app
2. Click on the top left corner to open the menu panel.
3. Click on Broadcast Receiver
4. Navigate to the System pane
5. Click on search on the top right. Search for Google Play Services. Click on them when they show up
6. In the search top right, write at least "sche" and you will see the two receivers responsible for the "net_scheduler" wakelock, "SchedulerInternalReceiver" and "SchedulerReceiver" . Here's a picture how it looks
7. Switch the first one off. The app will quit, don't worry.
8. Go back to where you were (steps 1 to 6) . You will see that you indeed managed to swtich that receiver off.
9. Switch the second one off. The app will quit, again no worries.
10. Check if you managed to switch the second one as well. After that you're done!
I hope I could help you guys out. I know there is nothing fancy in these methods but felt a thread might be useful as I saw a good number of requests when I mentioned it in the AKT thread.
Also sorry for misleading the guys I already told it was going to be a short guide, I honestly thought it would take way less words than it did. But I think it is for the better.
Have fun.
Hello everybody,
*the undermentioned methods and app(s) require root*
I have asked you guys in the AKT thread if you would like to see a small tutorial on how to stop the constant "com.google.android.gms/.measurement.PackageMeasurementService" and "net_scheduler" wakelocks that might or might not be responsible for the device waiting longer than it should before dozing off.
Please keep in mind that this method does work for me, and might or might not work for you, as everybody uses different things/apps so in case you see unwanted behavior, just revert back and sigh that the method has failed you.
I am not responsible for any hardware-/software damage that may occur upon using these settings.
So, now that we've got all the generic stuff out of the way, first few words about why this might bother you:
1) You don't like your device doing stuff you didn't make it do.
2) You want to minimize wakelocks
3) You're here because you just saw the two beforementioned wakelocks and already decided you want to get rid of them.
So, regarding the first one, all I can say is I got the method from this reddit post , which briefly explains which services are doing the waking and what they are. Starting with "At the heart of Firebase is Firebase Analytics, a free and unlimited analytics solution. .." got me raising an eyebrow, as I don't like handling control of my device to other people, without me even knowing.
UPDATE: I have merged the two approaches into just using one app and making the changes on a global level, so you can just do them in like 5 minutes and forget about it, but in case you have problems with disabling package measurement you can also check the hidden text just below for instructions using another app, which was basically "the old way".
So to get rid of the "snooping", as already described in that post, you need to download MyAndroidTools.
Disclaimer: Disabling some services/receivers may "crash" the app. I found it is normal, just go back to where you were and check if you managed to disable the thing you wanted, if yes, then it was successful.
1. Open the app
2. Click on the top left to open the panel, click on Broadcast Receiver.
3. On the menu that opens go to the right column named System. Click search on the top right, type "Play" and choose the Google Play Services option.
4. In the search bar there type at least "ana" and disable the two found results with the names "AnalyticsReceiver" and "AnalyticsSamplerReceiver"
5. Hit x and search again for at least "meas". You will see three results with the names "AppMeasurementInstallReferrerReceiver", "AppMeasurementReceiver" and "PackageMeasurementReceiver*". Disable all three.
****Update 15.02.17*** Apparently this one resets every once in a while, I blame this again on Google's efforts to have their spying on, but anyways. Go to services->system->Google Play Services->search "meas"->disable both "AppMeasurementService" and "MeasurementBrokerService". The third one (PackageMeasurementService) will restart too so don't bother. This should do the trick though.
6. There was discussion about "Campaign Tracking" . I only found it in the same System menu, in Android Pay, by searching at least "cam" you get the result "CampaignTrackingReceiver". Disable it if you feel you want to. I don't use Android Pay and cannot say if it breaks something there, but otherwise have it disabled and haven't noticed any problems so far.
7. Search for Google Play Store in System. In that option, search for at least "app" and disable "AppMeasurementReceiver". Hit x and search for at least "fir", then disable the two results with names "FirebaseInstanceIdInternalReceiver" and "FirebaseInstanceIdReceiver"
8. Done. All the setttings are now global for any sort of app measurements, as far as I know.
This is the "old way" of dealing with app measurement. If you have done the steps above just ignore (hide) this part and continue with disabling net_scheduler below.
So to get rid of the "snooping", as already described in that post, you need to download Root Package Disabler or equivalent alternative.
ATTENTION: As per the last version of the app, I see there might be a bug which reverts some settings when you use the search bar, so please try and find the services by hand in stead of searching, as it is more reliable.
1. Open the app
2. Start with the left-most pane, e.g. "Installed". There you can see all your installed apps
3. Click on the first app on the list, it will display a small menu. Apps that use services will have the bottom-left option named "SERVICES" available, click there. This will take you to the services list that this app uses.
4. Click on the searching icon on the top-right in order to filter the services we need disabling.
5. Write at least "appm" . If the AppMeasurementService is used by this app, it will now be displayed.
6. Tick that off (the switch will turn gray)
7. Hit x, and search again for at least "fireb". This will display all services that use the Firebase SDK. You may also check under the name of the service and see the word is contained in the "executable name", so it might not always have "an official" name that states Firebase, but still use one of their "executables" (sorry for lack of detail)
7.1 Check for any other services that have "analytics" in their description, although I haven't checked if this stops something useful, but I doubt it.
8. When you're done with the current app, it will no longer call these services and cause wakelocks as long as the services remain stopped. To my experience the settings stay after reboot, it's just the above mentioned bug you have to keep in mind since it happened to me now while making the guide, and I know it came with the latest update.
9. Go back to the installed pane and maybe tick on the star next to the app in question. It will be added to the "favourite" list where you can have all those apps and don't bother to search them again if needed.
10. Repeat from step 1 for the next app and go through all your apps. If not you will still get calls to this service from the apps that still have these services on. Also a reminder here, you have to remember and check every new app you install, as most apps do have the service enabled.
11. After you're done with all apps in "Installed", check out bloatware (I think I haven't found anything there, but it's worth checking).
12. "System" apps that I know have some of those services: Calendar, (probably) Chrome (I have that disabled so dunno), Drive, Duo, Gboard, Google Play Services, Google Play Store, Google VR Services.
Here are two pictures how an app's services list looks like, and one with some of the services disabled:
all services on
some services off
After doing these steps, you should charge your battery to 90% to reset the battery statistics and you should see that the "com.google.android.gms/.measurement.PackageMeasurementService" wakelock no longer occurs (or stays really, really low, and not thousands like before). If you still have it after all this, then you probably have an app you haven't disabled the services for.
The second approach will get rid of the "net_scheduler" wakelock. Thanks to @denon480 for the idea, it's post #34 in this thread It involves installing (again) MyAndroidTools or equivalent alternative.
1. Open the app
2. Click on the top left corner to open the menu panel.
3. Click on Broadcast Receiver
4. Navigate to the System pane
5. Click on search on the top right. Search for Google Play Services. Click on them when they show up
6. In the search top right, write at least "sche" and you will see the two receivers responsible for the "net_scheduler" wakelock, "SchedulerInternalReceiver" and "SchedulerReceiver" . Here's a picture how it looks
7. Switch the first one off. The app will quit, don't worry.
8. Go back to where you were (steps 1 to 6) . You will see that you indeed managed to swtich that receiver off.
9. Switch the second one off. The app will quit, again no worries.
10. Check if you managed to switch the second one as well. After that you're done!
I hope I could help you guys out. I know there is nothing fancy in these methods but felt a thread might be useful as I saw a good number of requests when I mentioned it in the AKT thread.
Also sorry for misleading the guys I already told it was going to be a short guide, I honestly thought it would take way less words than it did. But I think it is for the better.
Have fun.
Last edited: