Is there any way to manage sleeping apps so that when app is still on recent apps list, it will be a "never sleeping" app so it never goes to sleep. Is this possible with tasker or some other way?
What I'm trying to achieve here is:
I have some app listed as deep sleeping app, since I might not need it for a week and have no reason for it to ever run in background to waste any battery or spam notifications.
Then I might use the app to look for something --> switch to like browser to check something from there and when I switch back to previous application it's been killed and loads itself open from start which is slower and might lose some unsaved progress in the app.
I would really like to have it so app that isn't removed from recent apps list doesn't get killed and put back to sleep. Then when I do remove it from recents, it could be handled the default way to make it go sleep.
Can tasker handle these kind of situations like checking the recent apps --> if app X is on the list set it to never sleeping apps --> if app is removed from the recent apps set it to deep sleeping apps. Or some other similar way to control the sleeping/never sleeping apps.
Thanks
Related
Please dont 'quote' this as it VERY lengthy, just copy and paste the this first sentence.
I wanted to write up a definitive posting on task killers as I think they are way to often misused and misunderstood and I am getting quite tired of reposting this same information.
I use a task killer called TaskPanel XTRA (its free). BUT, I ONLY use it for killing tasks that are misbehaving (an app that has slowed down or nearly hung your phone or an app that is CLEARLY causing battery drain or sending copious data via your cellular connection). If an app continues to misbehave, switch to a different app that offers the same functionality, do NOT continue to use a task manager / task killer to kill an app continuously.
Task killers should NEVER be configured to automatically kill an app (as I will explain later in the post) and should NEVER be used to manually kill apps UNLESS it is a small emergency (as in major battery drain, copious cellular data, massive processor usage/memory usage preventing the user from using the phone normally).
Android is a VERY powerful operating system which gives YOU THE USER the control to manage your phone (hence the major reason I dont like the IPhone or Windows Phone), but with that control comes responsibility. As I will explain shortly, Android has many built-in features in place to help you manage your phone's precious memory. While there has been much nonsense one way or the other as to whether task killers should be used for anything other than a misbehaving app, I tend to listen to the creators of a product before I listen to some jackass who bases a decision on pure speculation or a 'feeling' he has. I can tell you that I have not used Task Panel in the last 4 months (with the exception of I believe Pandora which I used about a month ago and could not find a way to actually exit the app - guess what...this app is no longer on my phone - both because of privacy concerns that recently came up about Pandora AND I dont keep apps around that I cant manually exit the app cleanly).
For a VERY good write up (with a brief 'readers digest' summary at the bottom with plain English bullet points, since most of the article is taken directly from the Android developer FAQ and is very techy for non-programmers), have a gander thru this.
http://geekfor.me/faq/you-shouldnt-b...-with-android/
And for the FAQ they quote most of the above article from (but I do recommend you read the above FIRST as it will give you some context - much of the reasons are 'cherry picked' from different areas of the FAQ to help you understand why this is important and give you the information that is relevant to the discussion as to why task killers are not a good thing). All of the relevant information is in the page that will load up (in the rightmost panel / frame) so you dont need to click any links to read the relevant article. I am only providing this link as a reference to the original source material so you dont think I am just making this up - this is straight from the horses mouth so to speak (again, for most people, dont read this FAQ, read the one above first to get context and then if you feel you want to know more, read this link below).
http://developer.android.com/guide/t...damentals.html
Alright, enough about task killers, now to deal with how to manage those pesky apps that seem to always be running (even if you never started them) and how to keep them from starting up using a method that will NOT affect Android and how it manages your memory but will keep your phone in peek performance.
For managing the conditions when an app starts up, use an app called Autostarts, do NOT use a task killer to 'auto kill' tasks. Autostarts literally allows you to control the conditions of when an app starts.
Android has built in functionality for managing the memory footprint of various apps and will manage your phones memory quite nicely. Much of the functionality of the built in memory management came in Android 2.2 (also sometimes referred to as Froyo) and is really quite good 'if' you allow the phone to manage processes rather than just quickly killing everything.
There is a reason you can no longer just 'kill' system level processes, Google wants you to allow Android to 'learn' how to manage itself.
Android has a very powerful feature, the ability for app writers to start their app when certain conditions occur. The problem with this powerful feature is, often times, apps are bloated or poorly written, many times being started for any little thing your phone does (wifi on or off, Bluetooth on or off, location changes, screen on or off, USB connected, cellular connection, headphones connected, a cow fart, a bird poops, etc.). Even Google itself has been guilty of this, Google Maps (until recently) would be started in nearly 20 different conditions as a background process for very trivial things and was a major source of battery drain (it still is to some extent). This is where Autostarts comes in. Use Autostarts to control the conditions of when/if an app will start up automatically based on a certain condition.
Most ancillary apps (apps that are not integral to the core functioning of the phone - although it is probably more appropriate to refer to these as 'user apps', it isnt quite accurate because many 'system apps' (which in the technical description are apps that are installed with the rom) are not core apps either. For example, many roms come with Youtube pre-installed (meaning you do not manually have to go to the market and install them) which is not integral to the core functioning of the phone), these apps do NOT need to ever start under ANY condition for that app to function normally. The only considerations for an app starting itself would be the widget updating, the app has a scheduled event (for example, an alarm, a podcast client downloading podcasts at a certain time of day, Titanium backup performing a scheduled backup, etc.), or an app that has to be running in the background to perform a task when certain conditions arrive (for example, an app called Sanity needs to be available to run and monitor for incoming/outgoing phone calls so that it can start itself and perform its function during a phone call).
Using Autostarts, I have disabled nearly 80% of EVERY condition that all NON-system apps start under (I havent counted but for 70 apps, this is probably 55 apps or so that I disabled EVERYTHING these apps would start under). This includes Google Maps (yep, even Google is guilty of having an app needlessly running when it doesnt need to).
By taking control of your apps (in essence, disabling as many apps from 'auto starting' until YOU the user launch the app manually) and properly quitting an app when you can (within the app, find a way to click a 'quit' or 'exit' button to allow the app to remove itself from memory) rather than just allowing apps you launch to run in the background, you can save yourself massive amounts of battery life, limit cellular data usage, AND allow Android to properly manage itself.
Think of it like this, if I were trying to learn something but you (the user) kept doing it for me, Id never learn. And if you read the above linked article, you will begin to understand why there is more to this than just allowing Android to learn.
To give you an idea, using Autostarts to disable any non-system app that does not need to be running, if I am using the stock battery, I can run my phone for 2 days pretty easily if I simply turn off cellular data, Wifi and Bluetooth when I dont need it, maybe even stretch it to 3 days.
My ram usage is almost always around 50% (150 MB free) on a fresh reboot (around 2 minutes to allow the phone to stabilize) and it remains this way during the day because I exit apps when I am done using them, even tho I have around 80 apps installed, and I dont allow apps to just start themselves because they sensed a fart in my general direction.
For those of you that use a Windows PC, you can think of Autostarts as a proper 'msconfig'. Keeping your PC clean of apps when windows starts keeps your PC running much more smoothly. Autostarts takes this to the next level and keeps apps from ever starting in the first place rather than a task killer 'auto killing' a task, the app restarting, the app getting 'auto killed' again by the task killer, the app again restarting, etc. (a vicious cycle that both kills your battery because the phone has to crank up the cycles on the processor to both start and stop the app, the power used to write and clear the data written to both ram and 'perma' storage (if an app needs to store any data), and cellular data (if an app 'phones home' so to speak when it initially launches (which is both a cause for additional battery usage to send data and also adds to the amount of data your phone transmits over the cellular network, which is a problem given most cell plans have a monthly data cap).
Autostarts is fairly easy to use but does require root.
The app is $2 and here is a brief synopsis of how to use it:
When you initially launch the app, read any dialog messages that appear and click ok thru them. Then, wait for the app to finish loading (there is a progress bar at the top that will fill with yellow - on my phone it takes about 45 seconds to a minute to finish loading in).
Once it is loaded, you need to configure a few things BUT, you might want to just scroll thru the list of things currently on the screen. These are the 150+ conditions that apps currently installed on your phone are starting up under (dont click anything just yet, just browse the list if you are curious).
Right now, the app is configured to show a list categorized by conditions. This unfortunately is not very helpful. We need to change it to sort this list by apps rather than by conditions (so that we can literally disable EVERYTHING an app will automatically start under rather than scrolling thru every condition).
So, hit your menu button and the top left most icon in the menu that appears is an icon 'Group by application'. Hit that icon and magically, you are now seeing every app. You can now click an app and see all the conditions every app starts under. Neat.
But there is one more setting to change first in order to help keep you from doing something you should not.
(Optional but HIGHLY recommended!) Hit your menu button again (if you exited out of the menu already) and hit the upper right most icon, the 'View' button. Tick the topmost checkbox, 'Hide system apps' and hit the 'Ok' button. This will keep you from disabling anything that 'may' be critical to your phone operating.
Now, exit the menu (the 'back' button on the phone itself).
If you decided not to hide system apps, these will appear in YELLOW. It is probably not a good idea to mess with these unless you know what you are doing. Messing with these can cause a soft brick or make your phone unusable in certain conditions (for example, if you prevent the phone.apk app from ever starting, you will never be able to take phone calls).
Now, start scrolling thru the list (start at the top). If it is an app that does NOT need to run in the background, expand the app by selecting it and starting with the topmost condition that app starts under, tap each condition and in the menu that appears, select 'Disable'. Do this for ALL conditions for each app you want to manage. When you are done disabling the conditions, go to the next app and decide again whether that app needs to run in the background or not.
As a brief summary, to consider whether an app should be allowed to run in the background, ask yourself the following:
Does the app:
a. ...have a widget that you are actually using on your home screen that needs to update? For example, a media player or weather widget should NOT be disabled...
b. ...have a scheduled event such as checking the weather, downloading new podcasts, checking email, etc?
c. ...need to perform a certain task or provide some extra function(s) when a specific event happens (such as recording a phone call when it comes in, an eq when audio is playing, etc.)?
My recommendation is, if you answered YES to any of the above questions, leave all the conditions that app starts under alone (unless you know what you are doing, its best not to mess with it as I will explain in a moment).
If you answered NO to all the above, DISABLE ALL of the conditions that app starts under (again, DONT mess with system (yellow) apps and certainly dont disable every condition for these).
I recommend an all or nothing approach for each app is because if an app doesnt behave properly, it can become a major pain to continue to open Autostarts and try to track down a specific condition you disabled that is stopping / preventing that app from functioning the way you want it to.
Every time you update or install an app, if you remember, try to open autostarts and review the conditions the app starts under. Updated apps often times will add something new and if you have this app completely disabled, it may find a way to start itself again.
And, dont worry, you cant permanently screw anything up (unless you are messing with system apps - get the reason why I recommend not playing with system apps?). If an app stops functioning correctly, just re-enable the conditions that app starts under. Pretty easy.
Hopefully, this is complete enough, I will now just link to this post everytime I need to mention autostarts. I am getting quite tired of posting this same information .
Good information for people. Well done.
Sent from me to you using stuff
i have seen lot of people struggling to make their phones battery to last for a day .there are number of ways to do it ,but im explaing about the stock non rooted phones ....
1.make sure u set ur brightness to lowest value
2.never use a live wallpaper .always try wall papers which are dark
3.make sure u clean ur cache atleast once a week -u can use a free app called clean master
4.use a launcher like nova or apex
5.disable ur bloatware - settings>more>app manager>all>tap on a app u want to remove (note -u cant remove all the apps but some u can ..like samsung apps ,hangouts,weather etc)-if u r too lazy the open clean master app>go to app manager and press pre installed apps and remove them
6.free up ur memory after the usage by pressing home button and clean the background apps----if u r too lazy to do that then use a task killer like clean master
7.switch off screen rotAtion,bluetooth,gps,smart stat,sync,air gestures blah blah blah
8.screen off time should be kept to the least time possible
9.some apps like facebook uses a lot of ram all the time -if possible use fb in a browser
10.if u use an app very rarely then its good to backup ur apk and uninstall them and install it back whenever required
11.use 2g network whenever possible
12.turn off the locations in settings>more
13.turn off the phone vibration
14.turn on power saving mode -make sure u have limited ur cpu - hold power saving button and enable limit cpu
15.Reduce your dependency on cloud access
SUGGESTIONS ARE WELCOME
Changes made as suggested by DSA
Here's one for you, use greenify app to force hibernate background apps.
Sent from my GT-I9505 using xda app-developers app
Touch key light duration to always off, every little bit helps and it all adds up.
There are some options buried in settings that are always worth checking. Especially if you are regularly wiping everything after changing/flashing ROMs. Make sure you have 'Scanning always available' unticked in the advanced wifi settings. You can also obviously set the WiFi timer to switch it off automatically at night/switch back on in the morning. Always worth checking the refresh/sync rate in the settings of any apps you have installed, as the default interval can be sometimes set to refresh every 5/10 mins, which will obviously suck battery. If you have added additional google accounts, check the sync settings and uncheck any options you dont need. For example my Google music collection is on a different account and so I uncheck everything except music sync, as I dont have any contacts, photos, or other app data on this account.
Generally, I keep the screen brightness at around 40-45%, switch off everything I don't need when out and about, like WiFi if I leave the house, bluetooth as I dont need it running all the time, also switch off data when at home as I'm connected to WiFi. I also use Lux brightness control app, mostly for lowering the screen brightness at night, as the built in brightness level is still too bright even when at the lowest level. I'm not sure how much battery this saves, but its bound to have an affect as the screen brightness is lowered right down. A reboot doesnt do any harm every few days, to clear any background processes or apps that could be lingering and hogging battery. I reboot at least every day, after updating ad blocker Adaway to refresh the hosts file.
:sigh:
Seriously though folks, why? Why can't people just try and be a little more polite rather than jumping at each other's throats?
Closed since I see no peaceful future for this thread.
A.cid
Forum Moderator
Want apps to require "permission" to run in background/wakeup/notify (off by default)
Hello, I don't understand why this hasn't simply been included in Android from the beginning, but rather than changing the "Developer Options" setting "Don't keep activities" to on, why can't I require apps that I install to need permission before they can stay on in the background when I exit them?
I understand that leaving them in the background means they can load up quicker next time, but I want the default behavior of apps to be that they can't run in the background, don't "phone home" and don't generate notifications unless I specifically change that behavior to be on.
It is so extremely frustrating that Android doesn't come this way out of the box, and I know I could use Greenify, but I've heard so many people say they don't like Greenify, or it causes problems?
Why can't we just make it so Apps have to ask first, before they're allowed to run at startup, or run like a service in the background, rather than make users simply accept that they will do so as a condition of installing them, because that's how the developer wants it?
Any app like Facebook, or a game, should have to popup a dialog and be given permission from the user, before it can sit in the background checking for updates, or popping up notifications. The setting should also need an additional permission granted to do so while the screen is off.
We shouldn't have to root our phones and install Xposed to download modules from un "trusted" sources just to stop third party apps from draining our battery when our phones are in our pockets. It should be a simple thing, easy for the average user, to know that when the screen is off and the phone is put away that it's using minimal battery and the ONLY things that will wakeup the phone are calls/messages/things that the user deems as important enough to do so.
"Inactive Apps"
Wow - it looks like my prayers were partially answered already and I just didn't know yet.
The Developer Options "Inactive Apps" looks like it partially addresses my concerns about how difficult it is for users to have control over what runs in the background on their own devices.
Now all that's missing is finer control - I'd like to use Google Now and let Google ping my location occasionally, just not while the screen is off and the phone is running on battery. I'm not quite up to the task of using Tasker to make it so.
I wonder, should I still try using Servicely and/or Amplify in Android 6.0.1? it seems like Inactive Apps has pretty much obsoleted Greenify?
Hi,
First of all, this is a task killer question, and I know it has been preached again and again that task killers should not be used, which I do agree but need more clarification. I've googled and still can't find the answer to my question.
Current Phone : Huawei P9 Lite
Current Protected Apps Setting : Nova Launcher, Whatsapp, Inbox, Amplify, Greenify
So Huawei phones has this Phone Manager which is essentially a Task Killer and Memory Cleanup Utility to me.
To ensure that an app doesn't got killed after screen off, I need to add that app to be "Protected"
We all know that killing an app and have it restart/reload when being opened is bad(extra battery drain)
Hence my question:
Does killing an app, for example Chrome or Facebook, stops all it's background process after screen off? and thus stops battery use from that app? Previously before using Greenify, I have had incidences whereby Chrome kept my phone awake for the night if I didn't kill it.
Does this incident happens to you? As in, you trust android to manage memory, but having those app behind in background would simply just gives it a chance to run and keep your phone awake, such as Google Now, Maps(This! is notorious.....)
Looking to have 0.5% battery drain overnight if that is possible..
Hello,
All is in the topic, I've got an app that starts automatically when my phone is powered on.
It is Aircall, an app I use for passing and receiving calls at work.
I would like this app not to start automatically each time I power on the phone.
Is there a setting for disabling some apps to autostart ? Or an app you can advise ?
Thanks for your help.
Check the app's preferences to see if there are options.
In the Android settings, go to Apps > See All > (your app. eg Air Call) > App battery usage and set it to 'restricted.' This will greatly restrict an app's ability to do many things in the background.
Other than that, you'd have to root your device to get any more control over the app using something like Servicely (Google Play Store), My Android Tools (apkmirror.com), Permission Manager X (fdroid), AppOppsX (fdroid), or Blocker (fdroid) to control the app's broadcast receivers. Apps can choose to respond to various phone states such as when a boot is completed, when network connectivity changes, power is connected/disconnected, etc. It can take some aggressive action to fully prevent an app from always running.
If you're just annoyed by a notification icon in your notification area you can always disable that app's notification so it doesn't appear.
I have tried all of these things to control apps but if apps use a lot of various broadcast receivers they will find ways to keep running. You may find stopping it to have unintended consequences. It being a work app, I'd consider simply disabling the app's notificaiton if it has a persistent notifcation or something. The next step would be to restrict the app as in 2. The most aggressive thing is to root and tinker with its broadcast receivers.
Hello jawz101,
Thank you very much for this very complete answer.
All your precise instructions are very interesting.
I'll have a look at all these solutions.
Thanks again.
I am not sure about straight forward solution. But I would like to use Greenify app. Add apps to it once and run it once everytime you restart your phone.