Apple's deadline for iPhone push notification passes
In June, Apple's Scott Forstall promises background notification services would arrive in September.
(Credit: James Martin/CNET News)Apple has missed a self-imposed deadline for bringing background-processing capabilities--of sorts--to the iPhone.
When Apple revealed that iPhone applications would not be allowed to run in the background during its March iPhone SDK event, developers, as they are wont to do, grumbled about the slight. So in June 2008 at the Worldwide Developers Conference, Apple promised to give developers a workaround that involved using Apple's own servers to notify iPhone users running one application when fresh data was available for another application not in use.
However, as Macworld notes, Apple had promised to deliver that capability by September. It's now October. With one major iPhone update out of the way in the form of 2.1, and with 2.2 expected to focus more on cosmetic changes, it doesn't seem that Apple is planning to introduce this service any time soon.
Dan Moren at Macworld makes the point that Apple perhaps decided that given all the problems associated with the 2.0 software update, fixing those bugs with the 2.1 release took precedence over rolling out the notification service. That certainly makes sense, and given Apple's overtures to iPhone developers this week, perhaps the rollout is around the corner.
But this is an important capability that Apple needs to get up and running as soon as possible. Granted, iPhone development doesn't seem to be hamstrung by the lack of background processing to date, but given the choice, I'm sure developers could employ that technology to great effect.
Tom Krazit writes about the ever-expanding world of Internet search, including Google, Yahoo, online advertising, and portals, as well as the evolution of mobile computing. He has written about traditional PC companies, chip manufacturers, and mobile computers, spending the last three years covering Apple. E-mail Tom. 



Also, Android will have Push notifications from day one. iPhone users will get sick of hearing "too bad you can't do this on your iPhone" from G1, Blackberry and WM users real quick.
The Push the article mentioned is about IM pushing so that a user may close the application and yet still appears online and can receive new IM messages as they arrive.
iPhone already supports Exchange pushing.
No, the Push the article mentions is what Apple calls "Push Notification Service" for the iPhone SDK. It has nothing to do with IM, though it can be used for IM.
There are many many (many!!) non-IM uses for Push. In trading applications, you can set the server to push data when some conditions are met (price triggers, for example.) Or your news site can push breaking news to you if it meets certain keywords. Or your warehouse can push notification when certain items are low stock. Or you can be alerted if severe weather is approaching. Facebook can let you know if someone posted on your wall. Etc., Etc.
These are things you can currently do on the Blackberry, on Windows Mobile, on Symbian, on the upcoming Android... but not on your iPhone.
Without Push, programs need to be able to run on the background and "Poll" data periodically. Oh wait, that's not possible on the iPhone either....
Indeed, push notifications are an absolute must for the iPhone, but your chosen examples are rather dubious: firstly, ability to run an app in background app is not synonymous to receiving custom push notifications (i.e. unrelated to email or SMS). Android runs background apps, not push notification services--it does not implement a system-wide push capability as far as I know. Same with Windows Mobile. And for Blackberry, I was not aware that RIM provides hooks in the Blackberry server and APIs for the devices to push custom messages to user-developed apps. Probably it doesn't. But allows running in the background, I guess.
I also doubt that running Facebook in the background and maintain connection (that consumes battery) for the purpose of receiving posts, updates etc is a killer app (although it's nice). Such notifications can be received by push email.
On the other hand, IM is useless without the ability to run in the background or receive notifications when not the active app. And right now, IM on iPhone is useless.
If one can run any thread or process in the background, then one can implement real Push notification. It is in this sense I equate background apps with Push.
In the Apple iPhone world, a non-threaded App wanting to quickly show network-signaled updates today (even on the foreground) must "spin" continuously, polling the server for a notification every "n"-seconds where n is a small number (could even be sub-second.) This is a "Push simulation" scheme unfortunately used by many IM-like Apps. It is not efficient at all -- sucks a lot of bandwidth and eats the battery.
In its WWDC presentation Apple would let you believe that background Apps would have to do the same (spin-poll) to support notification. This is non-sense.
Instead, on any other system except the iPhone*, a background process or thread can open a TCP socket connection and then do a "select" system-call (or equivalent.) The task will then do a blocking sleep -- WITHOUT consuming any CPU or network cycles -- until there is activity on the TCP socket. When a signal is received on the socket, the background task wakes up and delivers notification.
Thus anytime you can have background tasks (plus the select call), it means you can implement true Push.
Having a "system-wide capability" for Push is a red-herring. The "Push Notification Service" proposed on the iPhone is there only because you can't run background processes on the iPhone. It's a hack (I mean "workaround") on Apple's part; The Blackberry or WM or Android don't need such a service, though one could be trivially implemented (i.e., simply dedicate a single background process for notification.)
[*] note: I'm not sure about PalmOS. Last I programmed PalmOS was 10 years ago and like the iPhone it did not have background processes, mainly due to licensing issues if I recall.
- by AppleSuxLeo October 3, 2008 10:41 PM PDT
- The deadline for AAPL to drop hasn`t passed yet however ;)
- Reply to this comment
-
(7 Comments)