I watched the Steve Jobs present iPhone 4 OS today. One of the biggest new features of the iPhone OS 4 is
On the surface, to the average user, this appears as multitasking. To me, not so much. Apple is using several different clever technologies to give off the impression that iPhone OS 4 can now multitask. Let’s break these down.
Background Processes & Services
There are several background processes & services now built in to the OS SDK. They enable background processing of audio streaming, and location services for GPS & social networking.voice-over-ip. In a nutshell, the developer of Pandora (example) alters the application to use the background audio streaming API to continue to stream audio even when the user switches to another application. Pandora is “shut-down (more on this later)”, but the audio streaming service continues to operate. There is no need for the Pandora user-interface to remain active when the user is not directly interacting with the application. Great! Now users can browse the internet in Safari and stream music through Pandora (or whatever app is present). Or leave Skype open and receive Skype VOIP calls. To be honest, this is clever and I wonder if they’ll add more services as time goes on. However, other applications, such as instant messaging apps have to continue to rely on push notifications and from what I can see, those intrusive Apple iPhone notifications still suck. If push notifications didn’t interrupt the users, using notifications for IM services is actually preferred (by me). Instant messaging apps KILL battery life. So push notifications in combination with fast app switching is a great way to tackle this problem.
I wonder if any of these services can run together ie. can I stream Pandora, while signed into Skype, while navigating in the Maps app? What if I get a Skype VOIP call while streaming audio? I’m sure these questions will be answered in the coming weeks as the developer beta trickles out.
In short, allows you to finish tasks such as file uploads (or downloads) in the background. Pretty cool, I’m sure those who have been held hostage by some app uploading pictures and can’t do anything on their iPhone will be grateful.
Fast App Switching
Fast app switching saves the “state” of application and “closes” it when you switch to another application. When I say “state” I mean it saves what documents you have open, or your current position in a 3D game. This allows the OS to re-open your app when you switch back to it and pick up where you left off. Great idea for many applications. There is no reason to have to multitask a single player game in the background or have a Note editor in the background wasting processing cycles and battery power.
Apple also added a new user interface element that allows users to quickly switch between “open” programs. Two-clicks of the home button brings up a “taskbar” with icons representing running applications. So you can switch between applications very quickly.
With all that said, as an engineer, I wouldn’t call this multi-tasking. I’d call it advanced user task management, but I guess multitasking sounds better, marketingwise. The methods Apple uses do a great job of appearing to multitask in most use cases, which will be good enough for most of iPhone users. For me, I’d rather have the OPTION on what method I’d like…which is why the iPhone nor Windows Phone 7 would be for me…Android.