This question is quite related to (and could end up being closed as a duplicate of):

How can I stop applications and services from running?

I would probably just comment there to get clarification on the answer given but I don't have enough reputation to add comments and I have additional questions, not another answer, so adding an answer to the above seems inappropriate, so the only option I have it so ask a new question.

Hopefully I am not committing too serious of a sin expanding on the above here in a new question.

So I understand that task killers are bad and completely buy into the concept that Android itself is in the best position to allocate resources, killing apps to make room in memory for newly opened apps, etc.

I (think I) also understand the concept of Intents and how they can activate an app so simply preventing them from starting at boot isn't enough to prevent apps from magically appearing in the "running" list (and potentially causing battery consumption).

But my phone (Huawei[1] Honor 8, still running Nougat, not Oreo) has a feature where it will tell me about "Power-intensive apps" and lists apps that it deems are causing (excessive) battery consumption. Along with the apps in the list, it provides a short explanation of why it thinks it's "power intensive" such as "High location frequency" or "Frequently wake up system" or "Keep awake", etc.

Surely apps running in the background, that I didn't even start (and have even previously closed but have restarted themselves) and are guilty of one of the above ("High location frequency" or "Frequently wake up system" or "Keep awake") are causing excessive battery use, no?

Wouldn't "Frequently wake up system" or "Keep awake" at least prevent Doze from kicking in, unnecessarily consuming battery?

And to be clear, these are apps that I have not used (i.e. opened in the foreground) since I booted the phone and are not likely apps that I feel need to be notified of any Intents. They are apps that I couldn't care less about until and unless I specifically open them to use them. They shouldn't be trying to "collect" information in the background since whatever collection they are doing is not useful to me. These are not social media or messaging apps that I am interested in having information presented to me unsolicited.

To call one of them out specifically, Spotify is currently running with the "Keep awake" permission. I am not listening to any music. There is no need for Spotify to be trying to keep my phone awake. I can "close" (kill) it but it will most definitely be running again at some point without me having opened it to listen to music, presumably woken up by an Intent.

Why can't we users be in charge of when apps are allowed to be awoken to run, particularly when they do things like "Keep awake", without having root our phone and install something like LineageOS that let's actually control permissions such as Keep Awake, etc. with it's PrivacyGuard (i.e. AppOps)?

[1] Yes, it's well understood that Huawei have a history of being overly aggressive with killing apps to try to preserve battery but that seems to be relaxed in their Nougat ROM (as the above linked article even confirms) as they now seem to have a whitelist of apps you want to be closed when the screen lock is activated and nothing is in the whitelist by default. But that aside, my observations here aren't about apps being closed or killed, etc. but simply that Huawei's OS is flagging apps that are exhibiting behaviours that would appear to be affecting battery life and even moreso even just making me aware of apps that are waking up and being run in the background, exhibiting bad battery life behaviours when I didn't even start using them or won't have any interest in using any time soon and so whatever they are doing in the background (data mining no doubt), I am uninterested. So ultimately, I want to be in control of what gets to start in the background.

App Ops - Permission manager seems to be an app to manage AppOps, but unfortunately it looks cumbersome to use. It requires one execute adb commands to start yet some other app every time you reboot your phone, etc. Users having more control over what apps can start based on which Intents and when should be a lot easier than this.

  • Firstly, reminder that VLC blacklisted Huawei phones because their resource management was too aggressive and would always kill the app in the background. Take what you see in the settings with a grain of salt. Secondly, Doze ignores wakelocks so I'm not really sure how much the apps affect it. Don't quote me on the effectiveness of this though as I'm not a dev. – SSS Oct 29 '18 at 18:40
  • 1
    AppOps can be used without using root and you can control "Run in the background" or "Auto start" or "Wake the device" settings if the apps use them. play.google.com/store/apps/details?id=rikka.appops&hl=en (a GUI for appops) – Firelord Oct 29 '18 at 18:43
  • ... and CLI solution: android.stackexchange.com/a/209345/218526 – Irfan Latif Feb 10 at 14:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.