After install and reboot, the first noticeable change is a switch from the plain black background behind the menu icons to an actual picture – and to add to the excitement, Apple threw in the option to customise the picture. This is something that phones have been able to do for around 7 years, but somehow Apple still managed to get me feeling excited about changing my background pic once again. Another nice touch is the Mac-style dock added below the bottom row of icons.
No ad to show here.
Moving onto the big one – multitasking – was at first anti-climatic. Running multiple apps simultaneously in the background doesn’t seem to be what Apple considers as multitasking.
The reason that Apple didn’t support multitasking initially was because they said that it ruins the user-experience when it comes to responsiveness: multitasking means that other processes could run in the background which would steal resources from the app that has the user’s focus.
Apple’s initial approach to enabling some sort of multitasking without having apps run in the background was push-services released with iPhone OS 3.0. This enabled app-specific messages to be pushed to the phone to trigger the opening of an app. However, this was very restricted as you always required a server-side implementation and messages were limited to text and sound.
With iPhone OS 4.0, true multitasking is still not possible, with Apple – as usual – putting their own spin on things. At first their implementation of multitasking seems ineffective, but after you take the time to consider what they’re getting at, things start to look up. iPhone OS 4.0 allows you to pause an application while still enabling certain services specific to that application to continue running in the background.
The services that will be able to continue running in the background are limited to a core set – those that have been mentioned so far are background audio, VOIP, background location, push notifications, local notifications, task completion and fast app switching. So developers are essentially restricted to keeping only a few key aspects of their applications alive in the background.
Using this approach, the performance of an application running in the foreground should only suffer marginally in comparison to having fully-fledged apps running in the background. The short of it is that Apple is forcing developers to create apps that don’t hog unnecessary resources when they are running in the background.
The downfall is that most current apps won’t be able to run in the background out of the box: any app that wants to take advantage of this new feature will most likely need to release an update that specifies which services must continue running in the background. Once the download is complete, a closer look into the updated SDK will give us further insight into exactly how it works.
Something else to bear in mind is that unfortunately the iPhone 3G won’t be getting the multitasking aspect of OS 4.0; even though the other features should work. Multitasking is only functional on the 3Gs at this stage.
There are other exciting updates in OS 4.0 – folders, improvements to mail, ‘Game Centre’, iAd etc. Check out the full list on Apple’s site.
Check out our video demonstration of the new OS: