May 24

I read David Pogue‘s latest article in the NYTimes regarding extending your battery life with a lot of interest. There are some mistakes in the article, particularly on how one can actually prevent apps from staying in the background by killing them – Pogue has requested the NYTimes people to amend his article.

What got me more interested was the fact that quite a lot of people don’t really understand how multitasking on iOS 4 works. One of the main reasons was the way Apple (and most likely Steve Jobs) dictated how multitasking should work on their mobile operating system.

Thinking differently, Apple thought that their multitasking implementation would help a lot in saving battery life. To a certain extent, they did.

iOS 4 Multitasking

Multitasking on iOS 4 is a little different compared to what every one of us understands it. The truth is, most apps that are compatible with iOS 4 goes into a suspended mode as soon as you exit the app by pressing the Home button. There are however, some apps that simply gets killed when you exit – really. Developers are given the option whether to enable multitasking for their app or not.

Yoda: there is another.

Yes, there is an additional category of apps that remains running in the background when the users quit. Some example of apps in this category include those that plays music in the background like Pandora, some VoIP-based apps like Skype and apps that require constant usage of the GPS radio. These are apps that will drain your battery, per se.

Obi-Wan: So what I told you was true, from a certain point of view.

Certain iOS 4 compatible apps that go into a suspended mode, don’t really get suspended until 10 minutes later. Apple gave developers a grace period of exactly 10 minutes to complete whatever task that the app was actually doing. For instance, let’s say you are downloading a file in GoodReader (boy, I love this app a lot!). While the file downloads, you get an incoming phone call. You decide that the call is important so you picked it up. Moments later, you end the phone call and return to GoodReader. Your file may have been downloaded completely. GoodReader has just spent the 10 minute grace period to complete its task of downloading your file before telling the operating system that it is okay to put it (GoodReader) into suspended mode.

What happens if Good Reader didn’t actually finish downloading the file after the 10 minutes grace period is over? In this case, the app would have to give up the task and inform iOS that it is okay to be suspended. Failing to do so will result in the app getting killed by the iOS watchdog.

AppSwitch - Processes List

AppSwitch - Processes List

Apple did a great job with the way multitasking is handled. The implementation of their “multitasking bar” was a little flawed though. It is basically a list of “recently used apps” instead of “what’s still running” in the background. You don’t actually see what apps are really running in the background unless you dig further into iOS.

That’s where the idea of my recently released app, AppSwitch came about. The app was born out of the need to see what apps runs in the background, versus which doesn’t. Before AppSwitch, there were already a lot of apps that display a list of processes on your device. But I thought I could bring AppSwitch a level further.

A few months later, AppSwitch was born. And while it took a few weeks of “fingers and toe-crossed” moment hoping that it won’t get rejected, the app finally went thru Apple’s strict approval process.

iStat - Processes List

iStat - Processes List

AppSwitch identifies and displays a friendly list of apps that runs in the background. Compare this to the usual processes listing app that simply gives a list of weird Unix-like names. AppSwitch can do this because of its own internal database of identified apps, all thanks to feedback from users and developers alike.

I tend to use AppSwitch to see which app remains running in the background, and decide if I should kill it from the Recently Used List. This has helped me save battery life by allowing only apps that I really need to run in the background and preventing others from running at all once I quit the app.

I’d have to say that we do get a lot of request from users asking to add a “kill” button into AppSwitch. Unfortunately, that will never be allowed by Apple.

You may be asking why would I want an app to see what other apps are running. Well, truth is, AppSwitch has its novelty and it’s other features like the Console can be helpful in troubleshooting an app. You can still kill apps from the Recently Used List.

On another note, you may also want to check out this article that I wrote many moons ago on how I actually maintain the long-life of all my battery-powered devices.

Be Sociable, Share!

written by xcool \\ tags: , , , , , ,

Be Sociable, Share!

One Ping to “iOS 4 Multitasking and Your Battery Life”

  1. Battery life and iOS multitasking | Says:

    […] iOS 4 Multitasking and Your Battery Life | One More Tap) Posted on 28/05/2011 by Ricky. This entry was posted in iPhone and tagged iOS, Software. […]

4 Responses to “iOS 4 Multitasking and Your Battery Life”

  1. 1. zach morgan Says:

    On androids you have an instant kill all apps button with one touch why did it take so long for this to come out on iphone I’ve had somthing like it on my droid for almost 2 years

  2. 2. His Shadow Says:

    I’d leave a comment but I’m running off to buy AppSwitch…

  3. 3. KenC Says:

    How about an app that tells you what app is using cellular data, in the background?

    After almost 4 years of iPhone ownership, Edge, 3g and 4, I had the odd experience of using up my 200MB of cell data in a month. I got the 70% warning from AT&T and then turned off cell data. Later when I was mowing the lawn, outside my house, I turned it back on. Shortly after I got a message that I had used up my 200MB. I was not running anything that I was aware of, while I had my iPhone in my pocket. I then turned off cell data and location and notifications. It seemed to me that location services and notifications couldn’t be using up cell data, so I turned them back on. A week later I turned cell data back on, and within an hour, I got another message that I had used another 200MB of data! How could any app be using up so much data in the background?

    I asked at the Apple Store if they had heard of any complaints about high data use for apps in the background, which I assume had been suspended, and got no for an answer.

    Got any ideas? I killed all the background apps, and now cell data is back to normal.

  4. 4. xcool Says:

    @KenC, you may search the iTunes App Store for such an app. I’ve seen a few that will show you the amount of data used, but I don’t think it will be possible to see *which app* used those data. Good luck.

Leave a Reply

Add to Technorati Favorites Cheap Hosting by HostMonster