¿Qué tan confiables son los sistemas de notificación push para la disponibilidad de datos en tiempo real para aplicaciones móviles?

¡Hola! Como notó, las notificaciones push estándar proporcionadas por Apple APN y Android GCM no son confiables en absoluto. También lo escribieron en su documentación (Apple Push Notification Service) y (Google Messaging Concepts and Options).

Facebook usa MQTT por lo que sus notificaciones push son confiables.

Para que las notificaciones push sean realmente confiables, agregamos una puerta de enlace de notificación push independiente, independiente de los servicios Android GCM / Apple APN. Como resultado, Catapush mantiene una conexión en segundo plano en tiempo real con dispositivos que utilizan el protocolo XMPP (al igual que Whatsapp), lo que envía el envío más rápido y tiene la capacidad de entregar mensajes en situaciones críticas. Eventualmente, Catapush ofrece una opción alternativa de SMS para llegar a los usuarios con mensajes importantes incluso cuando la conectividad de datos no está disponible.

De hecho, Facebook usa MQTT y WhatsApp usa XMPP. Luego envían actualizaciones de contenido a través de esos enchufes a los dispositivos en tiempo real.

En su escenario, tiene algunas opciones. Una es construir su propio cliente / servidor websocket con un mecanismo de publicación / suscripción para mantener a los clientes actualizados en tiempo real sin tener que sondear.

La otra opción es usar un producto existente como Pushy, que ofrece una puerta de enlace de notificación push altamente confiable para aplicaciones de Android que funciona independientemente de GCM, utilizando su propia conexión MQTT de fondo.

Divulgación completa: fundé Pushy.

La diferencia principal es que con los sockets web (o cualquier otra tecnología de servicio web) sus servidores siempre sabrán quién está conectado el usuario, lo que hace que la información de ese usuario específico sea muy fácil de recuperar en la aplicación.

En mis aplicaciones, por ejemplo iCurrency Plua ( http://limitedsecurities.com/icu …), ¿tiene sentido presionar las últimas tarifas para actualizar la aplicación, cuando la aplicación puede recuperar fácilmente las tarifas y configuraciones para ese usuario específico?

Si se suponía que debía hacer solo empujes, tendría que hacerlo para todos los usuarios todo el tiempo y eso puede crear un serio cuello de botella en mis servidores.

No estoy seguro si eso responde a su pregunta, pero para mí es quizás la diferencia más importante. Mire también Facebook, ¿por qué la insignia del icono no siempre es 100% precisa pero cuando abre la aplicación, los contadores de notificaciones cambian?

Saludos,
Miguel