android - programacion - ¿Por qué volver a registrarse en gcm cuando la aplicación se actualiza?
manual de programacion android pdf (1)
Está mezclando dos términos diferentes: clave de API e ID de registro. No es necesario crear una nueva clave de API al implementar una nueva versión.
Lo que Google recomienda hacer (en las citas que incluyó anteriormente) es volver a registrar cada dispositivo que instala la nueva versión en GCM (y no confiar en un ID de registro previamente obtenido), porque el ID de registro existente asignado al dispositivo para su no se garantiza que la aplicación funcione para la nueva versión de la aplicación.
Estoy usando gcm en mi aplicación. En la página de Google Developers Console, creé un proyecto y obtuve una identificación de proyecto:
Usando esta identificación de proyecto en mi aplicación, el usuario se registra en los servidores gcm y obtiene una identificación de registro. Luego se envía a mi servidor de terceros para ser almacenado.
Cuando un servidor de terceros desea enviar un mensaje al usuario, utiliza el apikey que obtuve en la página de la Consola de Desarrollador de Google en el encabezado de la acción de publicación y utiliza la identificación de la misma que se ha almacenado para este usuario en particular. La clave de API que estoy usando proviene de:
Tenga en cuenta que es la clave para las aplicaciones de servidor y la forma en que estoy usando esta información es tan solo como lo expliqué.
Todo funciona bien, los usuarios correctos recuperan los mensajes, etc. Estoy planeando implementar mi aplicación en google play, pero lo que está escrito en la sección: los temas avanzados de GCM me confunden. dice :
Cuando se actualiza una aplicación, debe invalidar su ID de registro existente, ya que no se garantiza que funcione con la nueva versión
y en la sección de comentarios del código de muestra en Implementación del código de muestra del cliente de GCM, aparece este comentario:
// Check if app was updated; if so, it must clear the registration ID
// since the existing regID is not guaranteed to work with the new
// app version.
¿Qué se entiende por estas dos explicaciones? Pensé que a menos que presione la tecla regenerar aquí:
mi clave de API no cambiaría ¿Por qué debería (o realmente cambia) cuando actualizo mi aplicación? o estoy recibiendo algo mal?