Apple Push Notification Service
The Apple Push Notification Service (APNs) is a service created by Apple Inc. that was launched together with iOS 3.0 on June 17, 2009. It forwards notifications of third party applications to the Apple devices; such notifications may include badges, sounds or custom text alerts. In iOS 5's Notification Center added pushing local notifications. APNs was also added as an API to Mac OS X v10.7 "Lion" for developers to take advantage of, and was 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 maintain battery 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.
In iOS 8 and later, the maximum size allowed for a notification payload is 2 kilobytes; Apple Push Notification service refuses any notification that exceeds this limit. (Prior to iOS 8 and in OS X, the maximum payload size is 256 bytes.).
- Android Cloud to Device Messaging Service
- Google Cloud Messaging
- SQL Server Notification Services
- Microsoft Notification Protocol
- Push email