The Apple Push Notification Service is a service created by Apple Inc. that was launched together with iOS 3.0 on June 17, 2009. It uses push technology through a constantly open IP connection to forward notifications from the servers of third party applications to the Apple devices; such notifications may include badges, sounds or custom text alerts. In iOS 5, Notification Center enhanced the user experience of push and local notifications. APNs was also added as an API to Mac OS X v10.7 "Lion" for developers to take advantage of, and was greatly improved in OS X 10.8 "Mountain Lion" with the introduction of Notification Center.
Apple first announced the service on June 9, 2008 with a stated release for that September; however, as stated by Scott Forstall at the iOS 3.0 preview event on March 17, 2009, the rollout was delayed after a decision to restructure the APNs for scalability purposes due to the allegedly "overwhelming" response to the announcement of the APNs. At both events, Forstall stated that push notifications were a better means to maintainbattery life than background processes (which are used for pull technology) as far as receiving notifications are concerned.
With Mac OS X Lion, an app can take advantage of the same API used in iOS to push badge numbers to applications running on Mac OS X. With the release of OS X Mountain Lion, users can receive push notifications through Notification Center. If the application is not open when the notification is received, the app will be badged and added to the dock (until the badge is cleared) to notify users.
Mac OS X Server uses APNs to push the server's mail, calendar and contacts services to network users. Devices such as the iPhone and applications like Mail and Calendar on the Mac can receive push notifications from Mac OS X server.
Each notification is restricted to a maximum size of 256 bytes.