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
Related
On a unit like this HD2, how do apps run in background? Do all apps use power just being there? Like Album app. Does it use up more power? Or like Google map. Does it use power? Or does it keep my GPS on if I have that feature enabled in it, while in background?
I'm trying to figure out how much apps I should be really closing to save battery.
more processing power used, more battery used
Ok, that I knew. What I'm wondering is if a app is in background, does that automaticly mean it's running? Example: Google Map. If it's in bacgound, is it still tracking where I am? Or will it only update when I have it on my main screen? Or lets say it uses my GPS. When in bacgound, is my GPS on or does it turn it off, and only turn it back on once I move it to my main screen?
kivine said:
more processing power used, more battery used
Click to expand...
Click to collapse
All apps, whether in the background or not, only use power when they "do" something. This is normally in the event of user interaction. Obviously, if you're watching a video or listening to music then the app is doing stuff without you interacting, but most apps have buttons and textboxes and lists etc. that require you to touch the screen in order to interact with them. In the case of applications like that, they literally sit there and do nearly nothing. They only react.
Of course an application in memory causes the device to utilise more memory and therefore more battery, but it's such an insignificant amount that you may as well say it's not using any. Try running 10 different apps that require input - notes, the remote desktop login screen, internet explorer on the blank page etc. - and see how much battery gets used. I doubt you'll see a significant increase.
Also bear in mind that there are apps that poll for information. There are apps that sit in memory and keep checking on the state of various things so that they can react to them. (Apps that do stuff when you rotate the phone - that kind of thing.) These are obviously active when they check things, so they can use more battery.
In your particular examples, it would be down to the software. Does the google maps app recognise that it's not in the foreground and stop polling gps information? That's purely down to the application and only Google (or the developers) could answer that specific question.
I think that's about it. Hope this helps
I've noticed that when I close an app (exit it) it usually stays open in the background. An example for this would be Facebook or Google Goggles.
I don't want to have those apps drain my battery when I don't use them and I don't want to have to close them manually every time I exit them. What can I do?
Please help
Im doing the same thing too i would like to know if possible. I tried a taskmanager program but that just halts an app from coming back up again.
Sent from my Arc using XDA premium App
When any Activity is no longer the frontmost Activity (on screen), it's shut down by the OS. Any "background" Activities are simply stored in memory in case you want to go back to them. What you're seeing is essentially the history of the app; when you "open" it again it'll just reload the last saved state. At that point, the application is allowed to execute again.
The only applications that should continue running in the background are services.
The only drain you'll see are, as above, services running and the power necessary to keep the background Activities in memory; they're not actually executing.
Of course, there are ways to get around that, but most good citizens will respect Android's wishes when it comes to saving state and exiting when they're no longer frontmost.
NickWarner said:
When any Activity is no longer the frontmost Activity (on screen), it's shut down by the OS. Any "background" Activities are simply stored in memory in case you want to go back to them. What you're seeing is essentially the history of the app; when you "open" it again it'll just reload the last saved state. At that point, the application is allowed to execute again.
The only applications that should continue running in the background are services.
The only drain you'll see are, as above, services running and the power necessary to keep the background Activities in memory; they're not actually executing.
Of course, there are ways to get around that, but most good citizens will respect Android's wishes when it comes to saving state and exiting when they're no longer frontmost.
Click to expand...
Click to collapse
So when I click the "Force Stop" in the task manager on one of those applications that I've closed, what does it do? I don't think it erases them from the memory.
For instance, Facebook, when I click "Force Close" I'll still get notifications.
I'm seeing some of these applications in the Battery Usage.
Furthermore, Android will completely shut down apps in the background in order to recover the memory they're using, if it's needed elsewhere. That's really the only time that app management is necessary.
If you're simply seeing a lot of "background apps", rest assured they're not draining your battery.
If you are seeing an inordinate battery drain while you're on the home screen, you might have a service running behind the scenes that's consuming your CPU cycles.
Look for System Panel Lite in the Market; it will let you see the amount of CPU being devoted to each process. I'd bet that most of your background stuff is only eating RAM and not CPU. If there is something eating up a lot of CPU, you can investigate that particular app instead of simply force-killing everything in the background.
matanc1 said:
So when I click the "Force Stop" in the task manager on one of those applications that I've closed, what does it do? I don't think it erases them from the memory.
For instance, Facebook, when I click "Force Close" I'll still get notifications.
I'm seeing some of these applications in the Battery Usage.
Click to expand...
Click to collapse
There are two components to the Facebook app: the application itself and a service. When you "Force Close" the application, you're just stopping what you see onscreen. The service is still running, and a totally different animal than the application stuff we were discussing.
Edit: To clarify: You're seeing the package under Battery Usage, which combines the application ("Activity") and service usage to form an aggregate for "Facebook", not just one component.
Edit: (again) You're right above when you say that it removes them from memory. That, in fact, is ALL it's doing. It's removing the history/background Activities from memory. Unless that Activity is actually the frontmost Activity at that time you click "Force Close", it's not saving you any CPU time/battery usage.
Okay.
So you're saying there is no reason for me to "Force Close" every app after I've closed it?
And btw, when you say that they are in the background what does that mean?
I mean, the Active Applications widget is supposed to show me those that are running in the background right? So how come when I go to the home screen (using the back button) from an app like Facebook it won't show in the Active Applications widget but it will show Google Goggles?
matanc1 said:
Okay.
So you're saying there is no reason for me to "Force Close" every app after I've closed it?
And btw, when you say that they are in the background what does that mean?
I mean, the Active Applications widget is supposed to show me those that are running in the background right? So how come when I go to the home screen (using the back button) from an app like Facebook it won't show in the Active Applications widget but it will show Google Goggles?
Click to expand...
Click to collapse
To your first point, yes, that's exactly it. Android does this for you if it needs the memory. Otherwise, it leaves the history hanging around to make it appear the app is loading quickly the next time you open it (and it puts you right back where you left off). Note that we're ONLY talking about the user interface you see onscreen here, not any services.
Your second point requires a bit more explanation. My apologies if this gets either too basic or too in-depth; I'm not sure what your skill level is with Android. Each "window" or "screen" you see is actually a separate Activity, and is essentially self-contained. As you navigate through screens, the previous one saves what you were doing in memory and then exits. When you hit the Back button, Android simply grabs the last screen in memory and loads it back up. At that point, the application is running again. My references to "background" applications above is exactly this: screens you've left behind that are waiting for you to hit Back.
It's ultimately more complicated than that, but I think this will work for our needs.
matanc1 said:
Okay.
So you're saying there is no reason for me to "Force Close" every app after I've closed it?
And btw, when you say that they are in the background what does that mean?
I mean, the Active Applications widget is supposed to show me those that are running in the background right? So how come when I go to the home screen (using the back button) from an app like Facebook it won't show in the Active Applications widget but it will show Google Goggles?
Click to expand...
Click to collapse
To continue: Services are the real sticking point here. A service is an application that doesn't have a user interface (or screen). It's running all the time and not subject to the history/back button behavior we've been discussing. These guys are the ones you really need to be worried about, if anything. These are the ones that will run behind the scenes, consuming CPU and data (and, by extension, battery). Facebook is an excellent example: It's always checking to see if you have new messages, posts, etc. so that it can pop them up on the screen. GMail and SMS (and phone calls, even) all do the same thing using services. If the service is badly-written, it can be a real drain even when you're not using it.
You mentioned Google Goggles specifically above, and unfortunately, I'm not very familiar with how that particular app works. I suspect it's not subscribing to the good citizen philosophy and shutting down when you're done with it. It imagine it has to do with needing to perform searches or image comparisons in the background while you're off doing something else. This is technically allowed by Android, but it's frowned upon and suggested that you only do it when absolutely necessary.
Whew. All of that to say this:
Apps, as a general rule, don't consume resources when they're not on screen. They'll consume RAM, which does consume battery power, but it's really insignificant in the grand scheme of things.
Some apps will continue running after you "exit" to the home screen, but they should only do that as long as they have actual work to do. Once they're done, they should also shut down as above.
Services will consume resources all the time; they're constantly used for things like checking Facebook, Twitter, email, voicemail, etc.
okay, so again, just to summarize:
Force Closing an app just removes it from the System Memory (which makes them load faster when I open them). These apps use no additional battery life?
So I can feel free to not Force Close apps such as Camera (which I can do that to for some reason which I can't think of)?
Edit: And thank you very much Nick for the help and great responses.
matanc1 said:
okay, so again, just to summarize:
Force Closing an app just removes it from the System Memory (which makes them load faster when I open them). These apps use no additional battery life?
So I can feel free to not Force Close apps such as Camera (which I can do that to for some reason which I can't think of)?
Click to expand...
Click to collapse
You're correct. As a general rule, you don't have to force close any applications in Android. They will use some RAM and zero CPU and data, which equates to effectively zero battery.
Leaving the app in the background (in memory) loads the app faster the next time you open it, assuming Android hasn't closed it to reclaim that memory on its own. I've found that within a few minutes of heavy use (browsing the Internet, etc.), Android has shut down several of the apps in the background for me; it needed that memory to let me continue doing what I was doing.
You don't need to force close apps in the normal course of business. The only time you should force close an application is if it's behaving badly while on the screen (it's not responding to button presses or it's stuck in a tight loop or somesuch). Force closing it while it's in the background doesn't really gain you anything.
Okay, so just one last thing:
Do you have any suggestion to try and improve the battery life?
matanc1 said:
Okay, so just one last thing:
Do you have any suggestion to try and improve the battery life?
Click to expand...
Click to collapse
I have some general suggestions:
Don't sync accounts that you don't use. For example, if you don't use Facebook very often, don't have it set to sync up every hour.
Turn off WiFi, Bluetooth, and GPS unless you're actively using them. (A caveat: Google Maps uses WiFi in conjunction with GPS, so turn them both on while using Maps, even if you're not connected to WiFi.) Personally, I don't do this. I leave WiFi, Bluetooth, and GPS on all the time, but I know people who swear by this.
Keep your screen brightness as low as you can stand it. Again, I don't do this. I generally leave it on Auto-brightness.
Ultimately, though, you need to find that balance between usability and battery life. If you're always on Facebook and Twitter, sending SMS and surfing, well, there's not much you can do but keep an extra battery or charger nearby. If you're an office-worker that only uses their phone on break and at night, some of the above will probably help.
If you can give me an idea of a normal day's usage of your phone (and make/model/ROM version), I might be able to be a little more specific, or at least point you in the direction of your device's Q&A forum.
Well, I'm new to android and I've got a Samsung Galaxy S 2.
I don't really use the data connection (which is why it's always disabled unless I decide otherwise) and I turn on the Wifi only when I need it (which is often relative to 3G).
Normally I just use my phone for calls, SMSing and a bit of surfing.
About the google maps, I've noticed that it uses A LOT of battery and that it starts itself after I force close it, so I've closed the Maps service which seemed to fix the problem.
That's more or less it.
Not much syncing as well, I usually sync only when I need it.
Edit: I must say that I don't really understand what Backround Data is.
Is it that the Background Data lets the apps use data (like use facebook via wifi?) while the Auto Sync syncs automatically when I get a new email / notification? Does the background data have to do only with the my monthly data package and not with wifi ( i think that is the case ).
First off, you'll probably be better served to ask the guys in the Samsung Galaxy S2 Q&A Forum. They'll have a better idea of what the device's baseline is and what specific features you can turn off. Sometimes, as with the Samsung Fascinate, there are specific features that cause problems on the stock ROM, like Maps issuing bad WakeLocks. I know on my Fascinate before the first update, I had to toggle airplane mode every time I booted or Maps would eat the battery up in hours. Those guys in the device-specific forums will have a better handle on it, if there's anything of concern.
In general, though, it sounds like you're doing a pretty good job of keeping the device doing just what you want it to do. Android's sync framework is going to try to sync up all of your accounts essentially simultaneously whenever you turn on data, since it's probably been turned off for longer than their individual refresh intervals. You might want to turn off automatic sync on the service that you do use, so you can control those a little better when you turn on data to do something else.
Maps is a heavy data user and it makes use of GPS, which is going to consume quite a bit of power. The startup cost you're noticing is it trying to get a fix via the cell tower, GPS, and WiFi all at the same time, since the services have been off. If you use Maps often, you might be better served to leave data on (but, say, Edge only if you're GSM or 3G only if you're LTE/WiMax). This way, Maps can get a rough fix on your location at all times and not have to beat up the hardware to get a fix from scratch when you turn all the services on.
The Maps service is probably, to be anthropomorphic, freaking out all the time because it's trying to get some sort of fix while all the data services are off. Truth be told, I don't believe it was designed for that. Shutting down the service is a good way to go if you don't use it often.
You could try an application like Autorun Manager to control which services start up on boot. To make the most use of it, you need to be rooted, but in non-rooted form it will give you more control over what starts up automatically.
matanc1 said:
I must say that I don't really understand what Backround Data is.
Is it that the Background Data lets the apps use data (like use facebook via wifi?) while the Auto Sync syncs automatically when I get a new email / notification? Does the background data have to do only with the my monthly data package and not with wifi ( i think that is the case ).
Click to expand...
Click to collapse
Background Data is what services use behind the scenes (like syncing and such), but I believe it's an aggregate of all data, not just data on the cellular network. I'm looking through the docs right now to see if I can find a definite answer.
Edit: According to the docs, Background Data is data that is sent or retrieved when the application is not onscreen. This can be either in a service (as is usually the case) or when the app has to do some cleanup after you've moved to a different screen.
Thank you very much
I've noticed that I've got a few widgets that are using memory etc, ones that I don't use and never intend to.
They were preinstalled with the phone and I can't seem to uninstall them. Is there a way that I could without rooting my phone?
And on another subject, if I root my phone, is there a way to "unroot" it in case I'll need to send it to Samsung if there is a problem with it (since i've got a warranty and rooting voids it?)
matanc1 said:
Thank you very much
I've noticed that I've got a few widgets that are using memory etc, ones that I don't use and never intend to.
They were preinstalled with the phone and I can't seem to uninstall them. Is there a way that I could without rooting my phone?
And on another subject, if I root my phone, is there a way to "unroot" it in case I'll need to send it to Samsung if there is a problem with it (since i've got a warranty and rooting voids it?)
Click to expand...
Click to collapse
In theory, widgets don't consume resources unless they're on your home page. If they have services that collect their data, that's a different story. If you don't want them, you can just long-press on them and drag them to the trash can.
In conjunction with Autorun Manager above, you can remove the widget from your home page and stop the service from starting at boot. For example, I don't use Facebook (I know, lame), so I removed the widget and stopped the service. True, it's burning up a couple of megabytes of disk space, but that's insignificant next to the power of the Force, as it were.
Regarding uinstalling them, generally the answer is no. If you root your phone, you can manually remove them from the device, but that's sometimes overkill. Generally, they take up little enough room on disk that you won't be hurting for space.
In most cases, "unrooting" is as simple as flashing the stock ROM (usually available at the top of your device's development forum). Rooting your device generally doesn't make any changes to the device itself that can't be undone by flashing a stock ROM.
I've heard that rooting still leaves traces on the device though and that if they catch that it's been rooted I'm screwed. So you're saying that's not true?
General Guide to Maximizing Your Android Phone’s Battery Life
You’re no doubt reading this article because you’ve got a shiny new Android phone, but there’s just one problem: you’re so addicted that the battery runs out on a daily basis. Instead of putting the phone down, let’s maximize the battery life.
Saving your battery life isn’t rocket science—the general principle is to get rid of the things that are draining the battery the most, and trim down other things that you need to use, but maybe can tweak a little. Keep reading for the full explanation.
Use Android’s Built-in Battery Usage Screen
There’s a screen built into Android that most casual users probably don’t even know about, and it can tell you exactly what is killing your battery. Head into Settings –> About Phone –> Battery use to see what has been killing your battery life.
From this screen, you can usually see what apps are the worst offenders, and you will probably notice that the biggest problem—at least, the biggest one that we can fix—is actually the backlight on the phone. Personally I’d prefer to talk less to other humans, but that isn’t always an option!
Note: on my phone, I’ve already configured the backlight to not be very bright—normally that number would be a lot higher.
Adjust the Backlight to be Less Bright
Since we’ve already determined that the backlight is usually the biggest problem, you should probably adjust the settings. Head into Settings –> Display –> Brightness, where you can choose to automatically adjust, which usually works fairly well, or you can just turn the brightness down to the lowest acceptable level.
You should make sure that the screen timeout value is set to turn off quickly as well.
Disable Your Wi-Fi When You Don’t Need It
Wi-Fi can really speed up accessing data on your phone, but it can also be a big drain on the battery if you don’t need it enabled, especially when you are out and about… The phone will try and scan for a wireless network even though you may not want it to.
To enable Airplane mode, you can head into Settings –> Wireless & networks–> Airplane mode.
You can easily toggle the Wi-Fi on or off with a widget or shortcut—there’s a built-in widget included in Android phones, or you can use the AnyCut or BetterCut utilities to create your own shortcuts to directly turn them on or off without requiring a widget.
Disable Bluetooth if You Don’t Use It
If you aren’t using a wireless headset, there’s no reason to have Bluetooth running all the time, and you should probably cut it off to save the battery life. If you never use it at all, head into Settings –> Wireless & networks–> Bluetooth.
You can also enable or disable the Bluetooth when you do need it, using the power widget.
Use the Power Widget to Easily Toggle GPS, Bluetooth, Wireless, and Screen Brightness
Android includes a built-in Power Widget that can easily toggle these settings on or off—just long press on the background of one of your screens, choose Widget –> Power Control to add it to the screen. You’ll notice in this example screenshot that I’ve got my GPS enabled but I’m not using Wi-Fi or Bluetooth at the moment—the icon all the way on the right lets you easily toggle the screen brightness settings.
This is probably the simplest and easiest thing that you can do to save your battery without having to dig into the settings all the time.
Disable Apps that Sync Constantly
The built-in Email application (not the Gmail one, which uses Push technology) can suck the battery badly, because it syncs on a too-regular basis, especially when you have lots of accounts—each one of them is set to sync every 15 minutes. You’d be better off setting it up to sync manually, but if you want it to sync automatically, you should set it to sync less frequently.
Open up the Email application, head to your account, and choose Account settings –> Email check frequency from the menu. Change this to something more like an hour… or never. You can always hit refresh manually when you want to read your email.
The same thing holds true for other accounts, like Twitter clients, which are even less important to update all the time. For Seesmic, you can head into Settings –> Background Updates from the main screen. For the official Twitter app, the settings are similar.
The Facebook application polls automatically in the background, and you can customize the refresh interval for that as well—if you don’t need Facebook updating all the time, you should set this value as high as possible.
From the main Facebook screen—the one with the icons—head into Settings –> Refresh interval from the menu.
Disable the GPS Location Features
One of the biggest battery sucking features on my droid is the GPS… When I have navigation going, the battery dies far too fast, so I end up having to keep it plugged in the whole time I am driving. This makes sense… but what you might not know is that a lot of other applications use the GPS as well.
You can also change the GPS to use wireless networks, and uncheck the option for Use GPS satellites—this will make the GPS a little less accurate, but it will save your battery. Note that you probably want the real GPS enabled if you’re using Google Maps Navigation.
Additionally, you should turn off the geolocation features in your Twitter client, weather application, or whatever other apps that you really don’t need them in. If you want to keep it enabled, that’s great, just realize that it does drain the battery, so uncheck this option to help.
Use a Task Manager to See What is Always Running
It is a wise decision to have a copy of Advanced Task Cleaner or a similar application installed on your phone to help you kill applications that don’t need to be running, but more so that you can see what exactly is launching itself repeatedly in the background. You can setup an auto-kill list for applications you don’t use that often—make them cut off when you shut off the screen, or after an interval.
Note: If you’ve configured your application settings to not pull down lots of data or do checking in the background, it’s not quite as important to keep tasks killed all the time—that’s really what kills your battery, not having them sitting idle.
You can also configure advanced task manager to show you CPU usage for each app, which is a more useful meter than memory usage when it comes to battery life.
Disable or Remove Applications That You Aren’t Using
Once you have identified the application that you don’t want running all the time, check in the settings to see if it can be removed from running in the background. Some applications will give you an option for notifications that can be turned off if you don’t need them, making the application not check in the background so often.
It should go without saying, but we’ll say it anyway—you should remove the apps that you don’t need anymore, especially the ones that are draining your battery as determined from the android battery panel or task manager. Head into Settings –> Applications –> Manage Applications and then you can click the Uninstall button for an app.
Disable Home Screen Widgets You Don’t Need
If you’ve got loads of widgets that are pulling data from the web, that means they are likely pulling down data in the background all the time. You should try not to go overboard with these, or remove the ones you don’t actually need.
Disable Animated Wallpaper
Yeah, that sweet animated wallpaper doesn’t help your battery any. Get rid of it for a small extra battery savings.
Use APNDroid to Kill Your Entire Data Connection When You Don’t Need It
If you’re using a phone that’s on the AT&T or T-Mobile networks, you can use the APNDroid utility to kill your data connection entirely with a simple widget. It doesn’t work on Verizon phones in my testing. It’ll disable the data but still allow regular calls and SMS.
Keep the Battery from Getting Too Hot
One of the quickest ways to kill a battery is to leave it out in the sun—try and keep your phone somewhere that isn’t too hot whenever possible. You’ll end up needing to replace the battery a lot quicker if you don’t.
Additional Notes
There’s a number of other things you can do to extend your battery life a bit—one of which is to use a rooted phone and install the Autostarts utility, which you can use to keep applications from launching themselves automatically. Since this isn’t something you can do on a stock phone, we’re not covering how to do it here.
You can also use an application called Tasker to automate certain actions, like turning on or off the GPS or Wi-Fi when you launch a particular application, or scheduling a time of day to make sure that Wi-Fi is disabled. Lifehacker has a great guide to using Tasker to automate your phone, and they also explain how to use a configuration to scale back data usage at night.
Source: http://www.howtogeek.com/howto/25319/complete-guide-to-maximizing-your-android-phones-battery-life/
Other battery tips that useful for you^
1. Things You Should Know About Lithium Ion Battery
http://forum.xda-developers.com/showthread.php?t=1168036
2. Advanced Tricks for Saving Battery (it Works)
http://forum.xda-developers.com/showthread.php?t=1189755
<<< Please click on "Thanks" if you found this post helpful, your thanks are very much appreciated >>>
Thanks, very usefull information
As an addendum.
If you have an OLED device, apps with black backgrounds are much more power efficient. Therefore, switching your background wallpaper to something darker will help battery life.
Screen size is a major factor too, smaller screen, more power efficient.
I do 2 days with my S2, easily.
The list should get a better layout, but the provided information are good - thank you!
Another option for editing the syncing in applications are to go into your main settings, the accounts & sync. There it should list he apps that sync and you can change them from there rather than finding each app individually.
Mh, I only see a list of the connected accounts but no list of apps.
Sticky This!
Nice clear guide
One issue I have now is with Sense 3 ported onto an original HTC Desire.
It has a bigger memory footprint than the stock Sense 1, and the memory cleanup function seems too aggressive, causing it to flush & reload too often, causing big CPU use.
Is there a way to tune memory `harvesting` to be less aggressive for specific apps in stock Gingerbread ?
You could try this app:
https://market.android.com/details?id=com.rs.autokiller
Yeah - I'm aware of the various task-killer 3rd party apps.
In my experience they often tend to lead to greater battery consumption as they over-ride the already pretty efficient gingerbread memory management.
I was hoping for a setting inbuilt to GB to just set residence priority higher on the single Sense task.
tune memory `harvesting` to be less aggressive
kuraikaze said:
Nice clear guide
One issue I have now is with Sense 3 ported onto an original HTC Desire.
It has a bigger memory footprint than the stock Sense 1, and the memory cleanup function seems too aggressive, causing it to flush & reload too often, causing big CPU use.
Is there a way to tune memory `harvesting` to be less aggressive for specific apps in stock Gingerbread ?
Click to expand...
Click to collapse
You can try out "autokiller memoery optimizer". It is a tool to change the value in the android underneath "low memory kill level". Maybe your current "low memory kill level" is too high (e.g. 250, means android will close your app when ur RAM is below 250). You can set it lower so android won't kill your apps too soon.
--------------------------------------------------------------------------------------------------------------------------
It fine tunes android systems inner memory manager to keep your device fast over time.
- As a side effect it also lowers battery consumption.
- At certain free memory level (e.g. 250mb), the android os will automatically close those apps not in use (according to original android os logic)
copy from another thread: http://forum.xda-developers.com/showthread.php?t=1189755
Very useful thanks for the info...
Thank you
Thanks.
Nice guide. Thanks.
Thanks
Sent from my SPH-D700 using XDA App
Thanks for this info. I have noticed that on my phone there is no direct way to close applications. Some application close when I use my back button but a lot just stay in memory. I would assume pressing the home button while an application is open will push it to the background. There seem to be no universal close button for applications other than using some application?
Sent from my GT-I9100 using XDA App
I doubled my battery life with this info. good stuff
thank you for your information,,, i will try it and hope it can solve my phone with battery problem,,,
Overview
Battery Saver Ultimate application provides the best power settings to saves the battery time of your device or your tablet. Whenever the battery runs low or goes too much down, just tap the power saver app to turn on the saving mode.
Battery savers help you to switch off all the extra functions like WiFi, Bluetooth, GPS, sound and other energy consuming apps on the device. The app will notify when the power gets down in percentage and it even shows the charging stages.
Charging Stages:
Free Battery Saver Ultimate app regulates the manner in which your device is charged with a Unique 3 Stage Charging system to ensure you get the most out of your battery and reminds you not to over charge.
Types of Mode :
1. Saving Mode: (Use in lowest Battery Status)
Device Brightness set to 10%
In Activate WiFi of the Device
Stand By time to 15 seconds
2. Sleep Mode: (Use when you sleep)
Turn Off Call & SMS and turn ON the Flight Mode
Set Vibrations Off.
Airplane Mode.
Sound Off and mute media sound too.
Brightness set to 10% or minimum level.
3. Customized Mode
You can Customize app usages as your need to save Battery Power.
Can adjust the battery saving setting freely depend on your need and usage.
Can adjust WiFi, Bluetooth, vibration, sound, device brightness, synchronization and stand by time.
Features and Requirements
Accurate battery remaining time
Shows Standby Time.
Accurate charging remaining time
Schedule power saving modes for work/class/sleep and more!
3 Stage Charging system 1. Fast charge 2. Continuous Charging 3. Tickle Charging.
Wifi/Data/Bluetooth/GPS/Flight Mode toggle!
Brightness control!
Shows Battery Health, Current Battery Power in mAH, Temperature, Voltage and Battery life status.
Interesting app. I installed it on my tablet. Look up how it will work. Pity that application is not in material design...
Can I say dodgy app here full of ads and nothing as you say it is. Gives me to play games and full of ads. Avoid
Looks very Good though
Full of ads, nothing like advertised. Avoid.
mr_stax123 said:
Looks very Good though
Click to expand...
Click to collapse
Please state more
i want to prevent apps to auto start to save battery and ram, which app should i use, grrenify or autorun manager or any other?
First, you need not concern yourself with free ram on an Android device. Android manages resources better by itself. As for the apps that launch on startup, you can got to menu>settings>apps and select the "running" tab to show you exactly what is really running. Then, the easiest way is to uninstall the app in question.
Automated task killers do nothing but cause more problems than they can potentially solve.
You might find this thread enlightening.
mr_stax123 said:
i want to prevent apps to auto start to save battery and ram, which app should i use, grrenify or autorun manager or any other?
Click to expand...
Click to collapse
The task killer discussion gets old. I think there is risk of oversimplifying both sides. ie on one side people want to treat it like pc...not correct. On the other side people seem to imply any discussion of memory management considerations is irrelevant/rejected because "android will handle it all"....which is not always entirely correct either. The latter may be closer to the truth especially for new devices, but there is still room for middle ground. Not all programs are equal, some launch "services" which takes priority over other app processes. Too many of those services can eventually crowd out cache and slow your phone down. Maybe most people with newer phones will never get there, but there are still people with older phones (including the op for all we know) and also some folks with new phones who (if they listen to the oversimplifications) may get carried away on the number and type of apps they install over the life of their phone
---------- Post added at 12:47 AM ---------- Previous post was at 12:43 AM ----------
Even so, killing off those services is not the answer. If an older phone has too many running services so it taxes it's resources then it's either time to uninstall some or get a device that can handle it. If it's a problem with the app itself hogging resources, then let the developer know and find an alternative.
If you try to tow a boat with a bicycle, the answer isn't to throw away the boat's engine to make it lighter. Similarly, a task killer may make the phone's performance improve briefly, but over time it will make things worse. And it fixes nothing.
An app preventing another app from "auto-starting" is a task killer. Look at it this way: The phone boots up and runs it's processes. The auto-start blocker detects an app it doesn't want to run, so it kills it. Now, depending on what app it is, the phone may call for it again and thus running it later, which defeats the purpose of an auto-start killer, unless that app is a task killer which again kills said flagged app to keep it killed.
The way to properly manage an app you don't want to have enabled on the phone at bootup is to disable the app on the system manager (newer phones have it AFAIK), freeze the app via Titanium or similar apps, get into the app settings and disable certain features like auto-sync and set everything to manual.
However, the OP did not specify what phone and which apps. It may be apps which the phone requires to run at some level, like Maps (which several apps call for), or maybe the apps he is seeing are just RAM cached, which really don't matter at all.
Adjusting with app settings is preferred if you can, but does not always solve the problem (I referred to wakelock/battery drain problem with a certain version of Maps on my previous phone ... many people we having the same problem at the time and the only way to stop it was to block the app from starting as indicated in link below, or else to freeze it). Freezing has the disadvantage that you cannot run the program easily (requires you to launch TiBu to thaw the program). If you have blocked the program from autostarting, then it does not start at boot or other automatic time, but it remains available to manually launch the normal way (clicking the program icon). At that point (if it's a program like Maps), it will probably stay running until next reboot. It was my preferred solution when maps was giving me wakelocks and battery drain on my phone. Maps didn't run automatically on boot and never started until I manually started it. After that point I could live with the battery drain or reboot
Rom Toolbox Pro is a great app with many features and of course, there's an auto start manager that allows you to disable various receivers off the apps that start on boot. There's also a freeze/deep freeze feature as well. Great app
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?