Atentos todos los que estéis desarrollando una aplicación móvil para dispositivos con tecnología Android porque os vamos a explicar cómo integrar la plataforma OneSignal para implementar notificaciones de tipo PUSH.
Para empezar, necesitaremos tener una cuenta en OneSignal. Una vez registrados en OneSignal crearemos un proyecto nuevo para nuestra aplicación móvil y procederemos a configurarla para Android.
Primero seleccionaremos la plataforma, en nuestro caso Android.
Una vez hayamos seleccionado la plataforma nos encontraremos con la siguiente pantalla:
Aquí es donde tendremos que trabajar con Firebase.
En primer lugar, debemos tener un proyecto registrado en Firebase. Cuando lo tengamos podremos obtener los datos de “Firebase Server Key” y “Firebase Sender ID” en la ventana de Configuración de Proyecto.
Una vez dentro de esa ventana, los dos datos que necesitamos están al principio de la misma, denominados en español “Clave del servidor” y “ID del remitente” respectivamente.
Copiamos los datos y los incluimos en los apartados correspondientes. Pasamos a la siguiente ventana en donde deberemos volver a seleccionar la plataforma con la que estamos trabajando: Android.
Pulsamos en siguiente y nos encontraremos en la siguiente ventana:
Aquí ya podemos ver nuestro ID de OneSignal, dato que necesitaremos para posteriormente enlazar nuestro proyecto con dicha plataforma.
Una vez llegados a este punto, abrimos Android Studio y abrimos nuestro proyecto.
Ahora hay que añadir los siguientes datos en el archivo gradle de configuracion del proyecto:
dependencies { implementation 'com.onesignal:OneSignal:[3.9.1, 3.99.99]' } android { defaultConfig { manifestPlaceholders = [ onesignal_app_id: 'PUT YOUR ONESIGNAL APP ID HERE', // Project number pulled from dashboard, local value is ignored. onesignal_google_project_number: 'REMOTE' ] } }
No olvidéis que debemos sincronizar nuestro proyecto con el archivo de configuración una vez hayamos añadido todas las modificaciones pulsando en Sync Now. Estos datos debemos añadirlos de forma que finalmente queden de la siguiente forma:
Recordad, por supuesto, reemplazar el OneSignal ID por el de vuestro proyecto que habéis obtenido anteriormente.
Bien, una vez que ya tenemos el proyecto correctamente configurado procederemos a escribir el código necesario para registrar un dispositivo en OneSignal.
Para ello, debemos escribir el siguiente código en una pantalla (Activity) para que se ejecute y quede registrado ese dispositivo en OneSignal.
Se recomienda poner dicho código en la primera pantalla o, en su defecto, en una pantalla que se ejecute siempre en la aplicación para que de este modo siempre que un usuario inicie la app quede registrado en OneSignal.
El código es el siguiente:
import com.onesignal.OneSignal; public class YourAppClass extends Application { @Override public void onCreate() { super.onCreate(); // OneSignal Initialization OneSignal.startInit(this) .inFocusDisplaying(OneSignal.OSInFocusDisplayOption.Notification) .unsubscribeWhenNotificationsAreDisabled(true) .init(); } }
Como podemos observar, se debe colocar en el método “onCreate()” de nuestra actividad.
Con esto ya quedaría el usuario registrado, y de hecho, si ejecutamos la aplicación en un dispositivo real o emulado, podremos observar a dicho usuario en la pestaña “Users” en OneSignal.
Para finalizar, podemos añadir el siguiente código para obtener el ID del usuario.
OneSignal.idsAvailable(new OneSignal.IdsAvailableHandler() {
@Override
public void idsAvailable(String userId, String registrationId) {
if (registrationId != null){}
}
});
Este dato es normalmente usado si tenemos un servicio en línea de PHP o similar que sea el encargado de controlar las notificaciones y sea quien decida qué notificaciones tiene que mandar y a qué usuarios.
El resultado sería el siguiente:
DigitalDot Servicios Informáticos, S.L. utiliza cookies propias y de terceros para mejorar nuestros servicios y mostrarte publicidad relacionada con sus preferencias mediante el análisis de tus hábitos de navegación. Puedes aceptarlas con el botón "Aceptar", rechazarlas en el botón "Rechazar" o configurarlas con el botón "Gestionar preferencias". Puedes consultar más información detallada sobre las cookies utilizadas en este sitio web desde nuestra política de cookies.
Funcional
Siempre activo
Las cookies funcionales son absolutamente imprescindibles para que el sitio web funcione correctamente. Estas cookies garantizan las funcionalidades básicas y las características de seguridad del sitio web, de forma anónima.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos.Las cookies estadísticas se utilizan para entender cómo interactúan los visitantes con el sitio web. Estas cookies ayudan a proporcionar información sobre las métricas del número de visitantes, la tasa de rebote, la fuente de tráfico, etc.
Marketing
Las cookies de marketing son necesarias para crear perfiles de usuario para enviar y personalizar publicidad, o para rastrear al usuario en una web o en varias web con fines de marketing similares.