We’ve talked in a couple of articles on the Android system (this one e this other) about how a task killer is not a panacea and about the fact that often problems are caused by single apps. Now we try to go deeper and see how to look for these waster apps.

Data and battery use

The first and most important cause of resources consumption in mobiles is data traffic. Be it wifi or 3g, radio emission necessary to communications is an expensive activity both under energetic and monetary point of views (potentially – in case of rate plans based on data). And as we’re speaking of mobile, it’s also a fundamental and quite used resource.

Battery use

Google knows too. With its open politics about Google Play apps, there might be bad designed apps, or greedy, or simply with unclear options, that end up eating battery.

The first tool that Android provides us to find such abuses is Settings > Phone info > Battery use. If you can’t find it here, it might be in some other menu or submenu, or the manufacturer might have decided to hide it. In the last case, you can remedy by installing Spare parts. However, on some devices, you won’t see battery use per app (only system apps), but you’ll easily find that most of the battery use is due to data traffic and display

Data usage (ICS)

The other tool, that Google added in last version of Android, IceCream Sandwich, is a monitor similar to that for the battery, but for network usage. With this tool it’s really easy to check for wastes, because you can also see the percentage of traffic – per app – made in background and hence not under user attention. It’s going to be easy to find abuses. For earlier Android versions, you might find some “network monitor” on Google Play (the top one seems to be Onavo), but it always depens on your device if you’ll see use per apps.

The display

The second cause of battery consumption is the display. The solutions are simple, but one of them is not at all obvious. Meanwhile, if you can, try to keep low brightness and short display disabling times.

The most interesting thing however is that if you have an organic led display (OLED), that is those with a black really black, bright colors consume much more that darker ones. Common LCD displays have a constant backlight, and to “make black” they just cover that light (that’s why there is never a real black). On the contrary, OLEDs emit light (and hence consume) only if necessary. This is why generally Android interfaces have dark colors. If you read a lot on your tablet, so, consider reading in “night mode” (white on black page) also in day. Consider also lowering white’s brightness (a medium gray will fit) to avoid that annoying visual effect of “striped vision” (who tried it knows).

Anyway, you can’t do much more to lower display consumption. They’re going to stay at top together with data traffic.

Scheduled jobs and greedy widgets

When the device is asleep we’d expect that it could stay like that forever; instead we might have bad surprises. The reason why apps consume resources unexpectedly is that they do it quietly, or without even telling us. There’s a couple of things to know not to be surprised again, particularly regarding background operations that are executed in standby, waking it up.

If a honest app perform some scheduled jobs, be sure that they’re data updates (hence not just a wake up but also network usage) or a widget update. In both cases, a honest app should let the user choose update frequency and even disable it. A particularly serious app will let you disable synchronization from main device settings.

Widgets in particular, says Google, should be programmed to receive updates at most every half an hour. However there are ways to make such updates much more frequent, even every few seconds! If such a system is not well designed, expect your phone to wake up every few seconds to update your widget. Always keep an eye on widgets when you’re hunting for wastes.

If we’re coping with a dishonest app, it might be transmitting data or executing jobs without you knowing. If you can monitor data traffic per app, and you find one doing any background communication without notice or obvious reason, distrust it particularly.

RAM and mass memory don’t count

You might thing that a filled up memory is more expensive to mantain instead of an almost empty one. Don’t worry: full or empty, RAM consumes the same – also if the device is in standby. Not only: if an app is not already in memory, loading it from mass memory is going to cost more. Regarding the mass memory, it’s always flash memory, which consumes only when written or read.

Wakelock

Some applications need to keep awake your device, even with display turned off, to complete some operations or a download. If such apps have problems or do a bad job in managing this wakelock, the device won’t sleep again indefinitely. You’ll notice this because the sleeping state is no more that cheap to mantain.

Other notices

We’re left with usual things that you can decide yourself looking among your device’s settings. The most important notice regards automatic deactivation of wifi, but the choice is up to you. Remeber also that bluetooth and gps consume if active, even if not used. Personally I prefer manual control over these three things, through some (passive!!) widgets that allow an easy enabling/disabling.

One last thing: if you often use adware apps you have to consider, even if small, consumes due to download and displaying of the banners (let alone the fact taht some force using them online). Hence don’t refuse the idea of buying the paid version, in the end it could be an advantage for everyone!

That’s all!

Interesting references:

Google I/O 2009 – Coding for Life — Battery Life, That Is

RAM: What it is, how it’s used, and why you shouldn’t care