Push Notification Service: Apple’s Solution to run iPhone Apps in the background
Apple had recently seeded developers of iPhone’s developer program with the second beta version of iPhone firmware 2.1 which included early Push Notifications APIs that allows applications to process notifications in the background.
The Push Notification APIs is a solution for one of the features that we have been asking for, ability for native iPhone apps to run in the background.
Native iPhone apps thus far cannot run in the background, and therefore cannot ping for data unless you’re running them explicitly which is something most of us have been accustomed having used smart phones such as Blackberry.
This was the reason why iPhone users and developers have been requesting Apple for a feature to allow iPhone apps to run in the background.
Scott Forstall, Senior Vice President of iPhone Software at Apple, believes that enabling background processes is not the right solution when it comes to mobile phones, as it would affect the iPhone’s battery life and degrade performance.
We have already seen Push services affecting battery life based on the basic push features available in iPhone firmware 2.0.
As for performance, the impact is quite obvious, any additional program running in the background would use up some of the phone’s CPU thus degrading performance of other running programs.
Apple is looking to solve this problem by offering developers with push notification service for no additional cost. Apple believes that this unified push notification service for developers is a much better solution, not only would it be scalable but it will also preserve battery life and maintain performance.
So how will Apple’s Push Notification Service for iPhone work?
Based on information available so far, Apple will maintain a persistent connection to the iPhone, so a developer’s server can ping Apple’s notification service using APIs to relay notifications to the iPhone, allowing any iPhone App to continue receiving data while inactive.
Developers can push one of three different types of notifications i.e. counters badges (for something like a new e-mail message), audio alerts, and pop-up messages that look similar to text alerts.
So as an example it will let an instant messaging application notify iPhone users of a new message so that they can launch the app to receive the new message without the need for the instant messaging app to run in the background.
All this works over the air i.e. over the Wi-Fi network and the cellular network.
This seems to be a good workaround to the problem of running iPhone applications in the background on a resource constrained mobile phone. However, the only concern is that iPhone apps will be dependent on Apple’s push server infrastructure that so if any portion of this centralized infrastructure fails, it could result in the iPhone applications not working as expected.
The iPhone SDK 2.1 which has been recently seeded to iPhone Developers providing them with early Push Notifications APIs to access these services. It is expected that these services will be available to iPhone users in September 2008.
Whats your opinion about Apple’s Push Notification service?
Top iPhone Hacks Categories: