Killing iOS apps

Now that all the successful and punctual bloggers have had their say about Fraser Speirs’s nicely written “Misconceptions About iOS Multitasking” post, it’s time for me to weigh in. Being timely has never been my strong suit.

The gist of Fraser’s post is that people—including people who should know better, like Apple Geniuses—seem to think that the apps in the multitasking bar are actually running, eating up RAM and processor time and slowing down your iPhone or iPad. This has led to a growing group of people who obsessively prune their multitasking bar of apps they aren’t currently using. As Fraser points out, this is both a waste of time (usually) and counter to Apple’s careful design of iOS’s multitasking system, which deactivates all but a very few apps as soon as you switch out of them and culls them from memory whenever that memory is needed by another app.

Killing iOS apps

There are, as everyone has pointed out, exceptions to the “you don’t have to kill iOS apps” rule. Sometimes those few apps that are allowed to continue processing in the background go haywire and need to be killed by hand. GPS apps seem to be the common culprits.

I’ve run into a few situations where killing apps by hand has helped, and it had nothing to do with GPS. The apps in question are Tweetbot and Reeder, two apps that are highly thought of and seem to be well written. The problem arises when I’m in an area with dodgy 3G coverage1 and try to update one or both of these apps. If the network connection doesn’t get established or is weak and keeps dropping, they fail to update, sometimes taking quite a while before they decide to stop trying.

According to Fraser and the others, background tasks are allowed only 10 minutes to keep a network connection going before iOS puts a stop to it. I have no reason to doubt that both Tweetbot and Reeder are stopped when this limit is reached—I’ve never noticed my battery’s charge level dropping in these situations—but I have noticed that when they have a 3G connection failure, they sometimes still can’t connect even after I’ve moved to an area with a better signal. They get stuck in the middle of an update and just spin their wheels.

When this happens, killing them and relaunching has fixed the problem. They update almost immediately after the relaunch. Because it happens with both apps—I can’t remember a single time in which one of the apps has been able to update and the other hasn’t—I suspect the problem lies with iOS, not the apps themselves. And I should mention that while this was a problem that arose fairly frequently (once a month, maybe) under iOS 4, it hasn’t come up yet under iOS 5.

There’s another bit of iOS voodoo floating around that I’d like to see Fraser tackle: recalibrating your home button. My gut feeling is that this, too, is a waste of time.

Update 1/9/12
The best way to get a question like this answered is to be lucky enough to have one the big boys link to you.

Last night, Marco Arment wrote a post focusing on my last paragraph, and he also tweeted about it. The consensus is that the “recalibration” procedure is, indeed, voodoo. According to folks who’ve looked at their iPhones’ error logs, the procedure simply force-quits the active app.

  1. Which seems to include most major US airports. A more conspiracy-minded person would think this is due to a shadowy collusion between the airports, AT&T, and Boingo to get me to pop for an absurdly expensive hour of WiFi while I’m held captive at a gate. 

3 Responses to “Killing iOS apps”

  1. Brian Enigma says:

    When I first saw the home button recalibration instructions, I immediately smelled something fishy. The home button problems people report really feel like hardware issues — like a degradation that starts to manifest some time along the mean time to (complete) button failure — and that sort of problem isn’t fixable in software. Maybe some aspects of it could be worked around in software, such as debouncing a badly flapping electrical connection, but you cannot heal a button, via software, that won’t always close a circuit. And if you could, I’d expect to see that in a hidden setting in a maintenance menu, accessible by editing a plist or punching in a string of digits surrounded by pound-signs and stars, not as a side-effect of force-quitting an app (but only certain apps!). I expect that if any part of the instructions work it’s the final step, with the preceding steps all being cargo-cult magic. I can kind of see how holding down the button for a long time might do something physical to the electrical contacts — squish down dust or crumbs or maybe pressure does something to improve lightly corroded terminals — but that would only work for limited cases.

    And for the record, the home button recalibration did nothing for my iPhone 4 home button, which sometimes registers a single tap as a double and vice-versa. The problem is minor enough that I hope to just hold out until the iPhone 5 comes around.

    Maybe I’ll soon post a way to improve performance by defragging your iPhone storage by going in and out of Airplane Mode 13 times.

  2. Peter says:

    Defragging takes at least going in and out of Airplane Mode 16 times, because it has to be a power of 2. Sometimes 32 gives better results.

  3. Graeme says:

    I suffered the same with my iPhone 4, sometimes it could take 10 presses of the home button to get it to register… For months I couldn’t multitask at all! Unfortunately for me, I was too lazy to go to the Apple store until it was 15ish months out of warranty. They offered to replace the phone but it would have cost too much for me, they also said, however, that if I had have come in a couple of months earlier then they would have replaced the iPhone under warranty. Then, however, one sunny day, Apple released iOS5 and it has oddly rarely been a problem since! On the odd occasion I may have to press the Home button a second time, but it’s not that often. I had assumed this was coincidence as I didn’t believe that a software update could fix, what I thought was, a hardware problem, but the reading I’ve done since seeing this issue pop up on earlier today has lead me to question that assumption.

    At the end of the day, I have a much happier phone now :)