Registro en servidor PUSH


Para poder hacer uso de las notificaciones PUSH es necesario habernos registrado previamente con algún servidor de PUSH para que nos faciliten la funcionalidad de envío de notificaciones a los dispositivos.

Lo normal es que no se disponga de infraestructura para montar un servidor PUSH independiente y lo que se hace es utilizar los servicios de Apple, Google, Amazon, Azure (Microsoft), etc, al igual que ocurre con los servidores de correo.

En nuestro caso vamos a registrarnos en la infraestructura FIREBASE de google de forma gratuita con una cuenta de gmail, válida tanto para android como para iOS.


Los valores que necesitamos obtener son: googleauthkey y googlesenderid, para ello hemos de irnos a la consola de Google Firebase, ni que decir tiene que debemos tener una cuenta de google para poder utilizar estos servicios.

Clave Valor / Descripción
GoogleAuthKey Obligatorio. Cadena en Base64 suministrada por Google. Se puede emplear la misma para todas las aplicaciones con réplica. Google lo llama clave de Servidor.
GoogleSenderId Obligatorio. Cadena en Base64 suministrada por el proveedor. En principio debe haber una diferente para cada aplicación. Google lo llama ID del remitente.


A continuación se definen los pasos para conseguir los dos valores que necesitamos.

Lo primero será acceder a la dirección: https://console.firebase.google.com y loguearnos con la cuenta de google.

1.- Entrar en la página de la consola de APIs de Google Firebase y pulsar en “Añadir Proyecto”.


2.- Tras pulsar en “Añadir proyecto”, nos aparecerá una ventana para:
- Poner un nombre al proyecto.
- Especificar en qué Pais/Región vamos a utilizar la aplicación.
- Pulsamos en “Crear proyecto”


3.- En la ventana que nos aparece, tendremos que pulsar en el icono para agregar Firebase a nuestra aplicación Android.


4.- En el primer paso de la ventana que nos aparece, tenemos que especificar el nombre del paquete de nuestro framework: “com.xone.android.XXXXX” ó el que corresponda en caso de que tengamos uno personalizado.
En ajustes - Aplicaciones instaladas - Aplicación que sea, podemos darle al icono para ver más información.. En concreto, nos interesa saber el nombre de paquete.



En este punto, si bien es opcional, es conveniente agregar también la huella digital SHA1 de la firma de tu aplicación para mayor seguridad, de esta forma aunque conozcan tus valores googleauthkey y googlesenderid, únicamente podrán enrolarse en tu proyecto firebase aquellas aplicaciones que tengan tu firma.

La huella digital SHA-1 se obtiene desde la consola de comandos de tu sistema operativo con la utilidad keytool que viene con JAVA.

Si se desea especificar la huella digital SHA1 de la firma del paquete para el que vamos a utilizar las notificaciones PUSH, cuando estemos en la consola de comandos tendremos que ejecutar:

keytool -exportcert -list -v -alias <nombre-de-key> -keystore <ruta-de-keystore>

Por ejemplo:
keytool -exportcert -list -v -alias androiddebugkey -keystore “C:\rutaquesea\debug.keystore”

El resultado sería algo como esto:

Certificate fingerprint: SHA1: DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09




5.- En el segundo paso de dicha ventana, simplemente pulsamos en “Continuar”.


6.- En el tercer paso de la ventana, simplemente pulsamos en “Finalizar”.


En la última revisión agregaron una nueva pantalla para verificar que hubiesemos seguido todos los pasos, esto nos lo podemos saltar.


7.- Una vez agregado Firebase a nuestro proyecto, tenemos que ir a la consola de configuración para obtener los valores que necesitamos.



En el apartado de “Mensajería en la nube” tendremos los valores que necesitamos obtener para nuestro proyecto: googleauthkey y googlesenderid.

La “Clave de servidor heredada” a partir de Abril de 2019 parece que no seguirá funcionando, por ello, utilizaremos la primera “Clave de servidor” (GoogleAuthKey) que nos aparece en esta ventana que será la que finalmente siga funcionando con el paso del tiempo (La más larga).

Para más información de Google Firebase


Página Descripción
https://firebase.google.com/docs/cloud-messaging/ Información de todo lo relacionado con el módulo CLOUD MESSAGING de firebase
https://console.firebase.google.com/u/0/ En esta página tendremos acceso a la consola de firebase y podremos activar ó desactivar los diferentes servicios que Google pone a nuestra disposición.


Para implementar el push en cualquier dispositivo, tiene que descargarse el fichero google-service para insertarlo en el APK o IPA de nuestra aplicación.
Para Android: google-service.json
Para iOS: google-service-info.plist. Ver más información: Buscar Para insertar fichero en .apk o .ipa