Históricamente, con el fin de promover la duración de la batería, Apple no dejaba que las aplicaciones se ejecutaran en segundo plano (hasta el lanzamiento de iOS 4.0 en junio de 2010), pero sí proporcionaba este APNS (Apple Push Notification Service), que permitiría a los desarrolladores de aplicaciones implementar cierta funcionalidad de cliente en sus propios servidores de terceros, que luego enviarían los mensajes de notificación al sistema central de notificaciones de Apple (disponible desde el lanzamiento de iOS 3.0 en junio de 2009).
Por lo tanto, cualquiera que quisiera escribir una aplicación con cualquier tipo de notificaciones de fondo durante toda la ventana de disponibilidad de iOS 3, tendría que tener implementado el soporte APNS, de lo contrario, su aplicación no tendría ninguna multitarea.
Parece que nunca ha sido así en la tierra de los Androids. Según tengo entendido, la opinión de Google sobre las APNS GCM - Google Cloud Messaging - no ha despegado todavía, probablemente porque quedarse sin batería en un día no es tan evidente como no tener la funcionalidad de las notificaciones de fondo en absoluto, y las arquitecturas APNS/GCM requieren que los desarrolladores de aplicaciones ejecuten ellos mismos los servidores extra en su propio lado, lo que obviamente tampoco es gratuito, y ciertamente requeriría ingeniería y complejidad adicionales, para lograr algo que no es del todo obvio a simple vista.
Además, según una pregunta en StackExchange El GCM es una segunda encarnación de la visión de Google sobre el APNS, donde el primero, ahora descontinuado, se llamaba C2DM (Cloud to Device Messaging Framework) . Parece que la C2DM tenía cuotas, que luego fueron abolidas con la posterior GCM. Las fechas exactas de la introducción de la GCM y la C2DM no están claras, sin embargo, sus partes del lado del dispositivo parecerían ser compatibles al revés, ya que ambas afirman ser compatibles con Android 2.2 y superior. El Android 2.2 "Froyo" se puso a disposición por primera vez en mayo de 2010.