JS Ext

Tuesday, January 22, 2013

Android Task Killers

When I got my first Android phone, I installed a task killer.  It was not an automatic task killer.  It had a widget icon that I tapped to kill apps that where not in a whitelist.  I know this is a bit of a religions debate.  I see both sides.  In my opinion, the task killers do have a place.

The discussion usually starts with a pro-task killer talking about background processes that they don't like.  The feeling they get is that those background processes are consuming battery...which they are.  An anti-task killer will say Android will automatically kill activities that aren't being used.  They will say that task killers actually use more battery because the background task will continue to start, which consumes the battery.

While generally that is true, in my experience, Android didn't get "good" at that until 4.0.  My phone and tablet run 4.1.  I have two Android TV's, one runs 4.0 while the other runs 4.1.  I do have task killers on all of them, but I almost never use the task killers.  I keep the task killers around because of the underlined generally from before.  The presumption that anti-task killers make is that Android will kill the background tasks that you don't really care about, leaving the tasks that you don't realize you care about.  What happens when an app is poorly written?

Developers are human.  Everyone makes mistakes.  Sometimes an error condition is triggered causing problems.  Android's documentation and developer community tends to emphasise the use of background threads.  After programming in Java from years, I have seen first hand that Java developers are bad at resource management.  Threads are resources.  Therefore, Java developers tend to be bad at writing multithreading code.  There is something about making it easier for developers to do something that causes them to abuse it.

What is comes down to is sometimes an app will consume a lot of CPU.  Android does provide a way to list running processes and kill a specific one, but it takes a while to go through that navigation flow.  I have found that on those occasions where an app goes rough, having an easy to use way of killing processes that are unknown to you comes in handy.  To me, its not about conserving battery.  My Android TV devices are plugged into the wall for power.  It is about having the ability to kill a process.  Android is based off of Linux, which gives you the ability to kill a process.  One of my complaints about Windows is that it can be hard to identify and kill a running process.    Please, don't make the argument that Android should be more like Windows!

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.