top of page

Implementación de Notificaciones Push con OneSignal en una aplicación Flutter

Alejandro Carrazana

¿Qué son las notificaciones Push?

Las notificaciones push son mensajes que se envían directamente a los dispositivos móviles o de escritorio de los usuarios, sin necesidad de que ellos abran una aplicación o sitio web en particular. Estas notificaciones aparecen en forma de alertas en la pantalla del dispositivo, incluso si la aplicación correspondiente no está abierta o en uso.


Las notificaciones push se utilizan comúnmente por aplicaciones móviles y servicios web para mantener a los usuarios informados sobre actualizaciones importantes, eventos relevantes, ofertas especiales, recordatorios de citas, entre otros. Las notificaciones push también pueden incluir un enlace directo a la aplicación o sitio web para que el usuario pueda acceder a la información adicional o tomar medidas inmediatas.


Notificaciones push para la fidelización de clientes


Las notificaciones push son una herramienta efectiva para fidelizar a los clientes. Al enviar notificaciones push personalizadas y relevantes, se puede aumentar la retención de los usuarios y mejorar la experiencia del cliente. Algunas formas en que las empresas pueden utilizar las notificaciones push para la fidelización de clientes incluyen:

  1. Ofertas y promociones: Las notificaciones push pueden utilizarse para enviar ofertas y promociones exclusivas a los clientes leales. Por ejemplo, se pueden enviar cupones de descuento o códigos promocionales para incentivar las compras repetidas.

  2. Actualizaciones de productos y servicios: Las notificaciones push también pueden utilizarse para informar a los clientes sobre actualizaciones y mejoras en los productos o servicios que utilizan. Estas actualizaciones pueden ser de interés para los clientes y ayudar a mantenerlos comprometidos con la marca.

  3. Recordatorios de eventos y citas: Las notificaciones push también pueden utilizarse para enviar recordatorios de eventos y citas. Esto puede ser especialmente útil para empresas de servicios, como salones de belleza o clínicas médicas.

  4. Comunicaciones personalizadas: Las notificaciones push también pueden utilizarse para enviar comunicaciones personalizadas, como felicitaciones por cumpleaños o aniversarios de clientes. Estos mensajes pueden ayudar a los clientes a sentirse valorados y aumentar su lealtad a la marca.

Implementación de notificaciones push con OneSignal en una aplicación Flutter


OneSignal es una plataforma de notificaciones push que se integra fácilmente con aplicaciones móviles y sitios web. La integración de OneSignal con Flutter es sencilla y permite enviar notificaciones push personalizadas a los usuarios de la aplicación.


A continuación, se detallan los pasos para implementar notificaciones push con OneSignal y Flutter.


Requerimientos de OneSignal


Para utilizar OneSignal, es necesario crear una cuenta en la plataforma. Una vez creada la cuenta, se deben seguir los pasos indicados en la guía de inicio rápido de OneSignal para crear una aplicación y obtener las claves necesarias para la integración con Flutter.


Además, son necesarios los siguientes requisitos para poder iniciar el proceso de integración.


Requisitos básicos

  • Contar con una cuenta de OneSignal.

  • El ID de identificación de OneSignal disponible para utilizar en la aplicación, se encuentra en la sección Claves e ID.

En la siguiente imagen se observan todas las secciones disponibles en el Dashboard de OneSignal y una muestra de las plataformas que se pueden integrar.

Requisitos para la integración de OneSignal en iOS

  • Un dispositivo físicio de prueba con sistema operativo superior a iOS 9. El simulador de Xcode 14+ con iOS 16+ también es una opción viable.

  • Instaladas versiones superiores del software Xcode 12.

  • Un certificado de inserción de iOS o un token de autenticación P8 de Apple.

  • Agregar una extensión de servicio de iOS en la sección correspondiente del proyecto Flutter, para ello sugerimos abrir el proyecto desde Xcode. OneSignalNotificationServiceExtension permite que la aplicación de iOS pueda recibir notificaciones enriquecidas con imágenes y botones, junto con insignias y entregas confirmadas. Para más información sobre este paso puede apoyarse en la documentación oficial ofrecida por OneSignal.

Requisitos para la integración de OneSignal en Android

  • Un dispositivo con sistema operativo superior a Android 4.0.3.

  • Una cuenta de usuario y un proyecto de Firebase.

  • Una clave API del servidor de Google/Firebase.

  • Un proyecto con versión del SDK de compilación (compileSdkVersion) igual a la número 33 o superior (superior al predeterminado para la versión de Flutter 2.8.0). Abra su archivo android/app/build.gradle e inspeccione la propiedad compileSdkVersion.

android {
    compileSdkVersion 33
     ...
}

Integración de OneSignal en Flutter (todas las plataformas)


Para integrar OneSignal en una aplicación Flutter, se debe agregar el paquete OneSignal Flutter en el archivo pubspec.yaml de la aplicación. Luego, se necesita inicializar la plataforma en el archivo main.dart de la aplicación.

void main() async{
 await OneSignal.shared.setAppId("YOUR_APP_ID");
 ...
}

También, puede agregar observadores para varios eventos, como la recepción o apertura de una nueva notificación, u observar cambios en el estado de la suscripción. Seguidamente se muestran varios métodos que proporcionan estas funciones.

  • El método setNotificationWillShowInForegroundHandler se llamará cada vez que se reciba una notificación en primer plano.

OneSignal.shared.setNotificationWillShowInForegroundHandler((OSNotificationReceivedEvent event) {
    event.complete(event.notification);                                
});
  • El método setNotificationOpenedHandler se llamará cada vez que se abra una notificación o se presione un botón.

OneSignal.shared.setNotificationOpenedHandler((OSNotificationOpenedResult result) {
    ...
});
  • El método setSubscriptionObserver se llamará cada vez que cambie la suscripción, es decir, cuando el usuario se registra con OneSignal y obtiene una ID de usuario.

OneSignal.shared.setSubscriptionObserver((OSSubscriptionStateChanges changes) {
    ...
});
  • El método setEmailSubscriptionObserver se llamará cada vez que cambie la suscripción de correo electrónico del usuario, es decir, cuando se llama al método OneSignal.setEmail(email) y el usuario se registra.

OneSignal.shared.setEmailSubscriptionObserver((OSEmailSubscriptionStateChanges emailChanges) {
    ...
});

Para finalizar, ejecute su aplicación en un dispositivo físico para asegurarse de que compila correctamente en las plataformas objetivo. Tenga en cuenta que el simulador de iOS no admite la recepción de notificaciones automáticas remotas.

Verifique todos los usuarios registrados en la sección de Audiencia del Dashboard de OneSignal.


Seguido, podrá enviar su primera notificación desde el Dashboard de OneSignal y comprobar su recepción por los usuarios registrados.








Contacto
Email
Telefono
ubicacion

info@octa.dev
jobs@octa.dev

Uruguay: +598 95 484 353

USA: +1 (307) 209 9642

Uruguay: Sinergia Design, Colonia 2235, Montevideo 11200.
USA: Coffeen Ave 1200, Sheridan WY 82801.

  • LinkedIn
  • X
  • Instagram
  • Facebook

¡Gracias por tu mensaje!

CUTI
Uruguay Technology
CUF
bottom of page