iOS4 Multitasking: Friend or Foe?

I was using the TomTom app on my iPhone 4 yesterday and was wondering when I was done using it, “is it still running?”  With iOS4’s new multitasking feature was the iOS4 ready TomTom app still depleting the battery by tracking GPS satellites?  Turns out the answer is yes.

Using iStat to view the running processes on my phone I saw indeed TomTom’s “US – Canada” was still running.  I was also under the mistaken impression that there could only be 4 running apps in the background.  Instead I kept launching apps and found 7 apps still running.

I’m not sure I like this behavior.  Prior to iOS4 I had a high confidence I knew what apps were running on my phone. The app I was using was consuming resources and when I pressed the home button I knew it exited (with the exception of select Apple apps).  Now, under iOS4, I see that I don’t know when an app has quit or wether it’s still running.  And more importantly, which apps are consuming battery draining resources? Apps that rely on Location Services (GPS) or music streaming are likely candidates.

I laughed at my Android friends who had to download task killers to put a stop to battery draining applications.  Please don’t tell me that day has arrived for Apple.  Also, will this introduce the notion of Quit to the iPhone lexicon?  I hope not.

iOS4 apps compiled for state saving aren’t an issue.  Their state is cached for quick re-entry and if the phone needs the resources they’ll get shutdown then.  But it would be helpful for Apple to better inform the user which apps are consuming more battery intensive resources.  In the case of Location Services an arrow icon will appear in the status bar. (Is there a similar indication for an app streaming data in the background?) But that will leaving you wondering, “which app is it?”  An app icon overlay would be helpful when you double-click the Home button and the multitasking user interface appears to better pin-point who’s currently using Location Services.

Tip: Quit an app by removing it from the multitasking user interface.  Hold your finger on the app icon until it begins to shake.  Then click the “-” in the upper left hand corner. Note, just because an app appears in the multitasking UI doesn’t mean it’s running. You will need an app like iStat to know for sure whether an app is running.