Everyone’s been wanting this since pretty much day 1, and now it’s finally here. Apple’s been working pretty hard to implement multitasking without burning up battery life or CPU power, and their solution is pretty neat. Here’s the basics.
First, implementation. You’re in an app, doing your thing, when you decide you want to enter another app that was previously open. Jobs used the Mail to Safari example in his keynote speech, so let’s just go with that. Double click the home button and a menu slides up from the bottom, very similar to the home screen in look but with a folders-esque background. Slide to the app that you want that is already running, and it fires it back up quickly like nothing ever happened.
So how the heck do they do it?
First, the apps aren’t really running in the background like a traditional multitasking system. It just pauses the app immediately where it is, then keeps that in memory. It does this by offering these APIs to programmers that allow the app to access the system when it’s not actively open, allowing it to run simultaneously with other apps. Pandora can now play while you hammer out an e-mail. You can get phone calls via Skype at any time. It does it through these 7 APIs:
- Background Audio (Pandora, Slacker, Sirius, etc.)
- Voice over IP (Skype)
- Background Location (TomTom and other navigation systems, or social networking sites such as FourSquare)
- Push notifications (Same as currently in the OS)
- Local notifications (Same as Push, but all local, without a national server. The app essentially alerts you via push)
- Task completion (Finish a process even once you leave the app)
- Fast App Switching (It’s the magic pausing system that allows Multitasking to work the way it does.)
Now combine these things, or any combination of them, and you’ve got some potential there. As explained in the keynote, a local service can notify you through the app. TV Guide, using their example, can remind you when a show is on. You can be on a Skype call, play tunes from your iPod and browse the web – in theory, anyways. No reports yet on combining three things at once. But you can guarantee that as soon as more developers get some play time with it that someone will give it a shot.
Well, everyone wanted it. Now that it’s here – or at least will be by June or so – is this what you were looking for?