Cómo capturar la aplicación de desinstalación en el dispositivo y dejar que el servidor sepa esto (iOS / Android)

Descripción del problema:

Tenemos un servicio que tiene aplicaciones para los sistemas operativos móviles principales. Utilizamos notificaciones push. Cuando el usuario inicia sesión, almacenamos los datos de autorización de su dispositivo (vamos a decir token) para su uso posterior en el servicio push. El problema es que hay pocas autorizaciones de dispositivo para un usuario y las mantiene válidas cuando el usuario desinstala la aplicación.

Ejemplo:

Le di mi login al sistema a unas pocas personas, en caso de intentarlo. Entraron a través de la multitud. Y el sistema agrega automáticamente algunas autorizaciones de dispositivo a la base de datos (tokens). Así que ahora tenemos fichas de dispositivo N para 1 usuario. De modo que si enviamos una notificación push todos lo recibirán. Ahora, supongamos que los que tienen aplicaciones instaladas quieren desinstalarlo. Sin logout, desinstalan la aplicación a través del administrador de aplicaciones. Y en este momento no tenemos datos válidos para el dispositivo autorizado. Y si tratamos de notificarlos, la notificación no se enviará a ninguna parte. Lo que está mal, y el trabajo inútil para el servidor. ¿Cómo hacer saber al núcleo que algunos de los datos almacenados ya no son válidos?

En breve – hay alguna posibilidad en Android / iOS para activar el evento de eliminación de aplicaciones. Si la aplicación se está eliminando, llame al servidor de llamadas para limpiar los datos del almacenamiento. O si la aplicación está abierta y el usuario la desinstala, ¿se dispararía onDestroy ()? ¿O algún otro?

No soy desarrollador de iOS, no desarrollador de Android, sólo sé un poco sobre el segundo y nada de los primeros. Cualquier consejo será apreciado. Gracias por adelantado.

Eso depende de qué servicio de empuje está usando. Afaik, si está utilizando C2DM , el acto de desinstalar la aplicación automáticamente lo anulará de C2DM.

Editar:

Ah, y sobre iOS – afaik no sigue directamente las aplicaciones desinstaladas, sin embargo, viene con un servicio de retroalimentación de notificación fallido que después de una secuencia de notificaciones fallidas (informado por el dispositivo a la red push) le notificará – lo que le permite limpiar Después de una aplicación desinstalada.

No puedo hablar por iOS. No se puede obtener control cuando la aplicación se desinstala en Android.

  • ¿Es necesaria una cuenta de Google para GCM (Google Cloud Messaging)?
  • ¿Por qué es necesario iniciar sesión en Google para que GCM funcione para dispositivos inferiores a 4.0.4?
  • ¿Cómo analizar enviar push sin registro de gcm?
  • ¿Cómo puedo obtener mi dispositivo de ID de registro
  • Notificación de emisión del receptor de difusión
  • Script de GoogleCloudMessaging PHP siempre devolviendo invalidregistration
  • La notificación de envío de GCM no se muestra en algunos dispositivos cuando la aplicación no se está ejecutando
  • Alerta de visualización cuando llega el empuje
  • El servicio de Intención de GCM OnRegistered no se recibe
  • Phonegap PushNotification para abrir una página de aplicación específica
  • Dos servicios de notificación de empuje en android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.