Skip to main content

Descripción general

Configurar notificaciones push para tu aplicación Unity usando OneSignal

Integrar notificaciones push en tu aplicación Unity es una manera poderosa de aumentar el compromiso y retención del usuario. El Unity SDK de OneSignal soporta dispositivos iOS (APNs), Android (FCM), Amazon (ADM) y Huawei, habilitando mensajería en tiempo real con mínimo esfuerzo. Ya sea que estés construyendo juegos móviles o aplicaciones interactivas, esta guía te ayuda a integrar OneSignal rápida y confiablemente.

Requisitos

  • Unity 2022.3 o más reciente
  • Aplicación y plataforma de OneSignal configuradas
Requisitos iOS
  • macOS con Xcode 14+ (las instrucciones de configuración usan Xcode 16.2)
  • Dispositivo con iOS 12+, iPadOS 12+, o simulador Xcode ejecutando iOS 16.2+
Requisitos Android
  • Dispositivo o emulador Android 7.0+ con Google Play Store (Services) instalado

Configure su aplicación y plataforma de OneSignal

Configure su aplicación de OneSignal con las plataformas que admite — Apple (APNs), Google (FCM), Huawei (HMS) y/o Amazon (ADM).
Si su organización ya tiene una cuenta de OneSignal, solicite ser invitado a la Organización. De lo contrario, regístrese para obtener una cuenta gratuita para comenzar.
1

Cree o seleccione su aplicación

Cree una nueva aplicación haciendo clic en Nueva aplicación/sitio web, o agregue una plataforma a una aplicación existente en Configuración > Push e In-App. Seleccione la(s) plataforma(s) que desea configurar y haga clic en Siguiente: Configure su plataforma.
Panel de OneSignal que muestra el flujo de configuración de nueva aplicación con nombre de organización, nombre de app y selección de canal

Configuración de su primera aplicación, organización y canal de OneSignal.

2

Configure las credenciales de plataforma

Ingrese las credenciales para su plataforma:Haga clic en Guardar y continuar después de ingresar sus credenciales.
3

Guarde su ID de aplicación e instale el SDK

Su ID de aplicación se muestra en la pantalla final. Cópielo y guárdelo — lo necesita al inicializar el SDK. Seleccione su plataforma de SDK y siga la guía de configuración.
Panel de OneSignal que muestra el ID de aplicación y la opción de invitar al equipo después de la configuración

Guarde su ID de aplicación e invite a miembros adicionales del equipo.


Configuración

1. Agregar el Unity SDK de OneSignal

Dos métodos de instalación están disponibles:
  1. Agrega el SDK a tu cuenta vía Add to My Assets.
  2. Haz clic en Open in Unity para lanzar Unity Editor y Package Manager.
  3. Descarga e Import el SDK.

Unity SDK de OneSignal en My Assets

  1. Acepta la solicitud para importar todos los archivos.
  2. Ve a Window > OneSignal SDK Setup y sigue la lista de verificación, especialmente Import OneSignal packages.
  3. Después de la importación, Unity actualizará el registro. Completa los pasos de configuración restantes mostrados en la ventana de configuración.

Ventana de Configuración del SDK de OneSignal

2. Configuración de plataforma

Agrega todas las plataformas que tu aplicación soporta.

Configuración iOS

Nuestro SDK auto-configura las configuraciones de Xcode requeridas. Elige tu enfoque de aprovisionamiento:
  1. Ve a File > Build Settings > Player Settings.
  2. Bajo Other Settings, marca Automatically Sign.

Habilitar firma automática en Unity

Configuración Android

  1. Ve a Edit > Project Settings > Player > Android.
  2. Bajo Publishing Settings, habilita:
  • Custom Main Gradle Template
  • Custom Gradle Properties Template
  1. Ejecuta Assets > External Dependency Manager > Android Resolver > Force Resolve.
Consideraciones adicionales:
  • El nivel de API objetivo debe ser 33+ (v5.0.6+).
  • Si Minify está habilitado, ejecuta Copy Android plugin to Assets desde OneSignal SDK Setup para usar OneSignalConfig.androidlib.
  • Reemplaza los íconos predeterminados dentro de Assets/Plugins/Android/OneSignalConfig.androidlib/src/main/res con los tuyos propios (solo nombres de archivo en minúsculas, guiones bajos permitidos). Consulta Iconos de notificación para más.

Configuración Amazon

Solo requerido para aplicaciones Amazon disponibles vía Amazon App Store.
  1. Edita o crea Plugins/Android/AndroidManifest.xml.
  2. Agrega namespace:
  1. Agrega permisos:
  1. Agrega lo siguiente a la etiqueta <application>:
  1. Reemplaza todas las instancias de COM.YOUR.PACKAGE_NAME con tu nombre de paquete real.
  2. Coloca tu api_key.txt bajo Assets/Plugins/Android/OneSignalConfig.androidlib/src/main/assets

Configuración Huawei

Solo requerido para aplicaciones Huawei disponibles vía Huawei App Gallery.Consulta Configuración Huawei Unity SDK para más.

Opcional: Deshabilitar el módulo de ubicación

A partir de OneSignal Unity SDK 5.3.0, puedes excluir el módulo de ubicación nativo de OneSignal de las compilaciones de iOS y Android cuando tu app no usa OneSignal.Location. De forma predeterminada, el SDK incluye el módulo de ubicación nativo para que las API de ubicación funcionen sin configuración adicional. Configura el indicador antes de resolver las dependencias de Android o compilar iOS. Hay dos formas de excluirlo:
  • Alternancia del Editor (interactiva): En el Unity Editor, ve a Project Settings > OneSignal y habilita Disable Location Module. La configuración se guarda en ProjectSettings/OneSignalSettings.json.
  • Variable de entorno (CLI/CI): Exporta ONESIGNAL_DISABLE_LOCATION=true (o 1) en la shell antes de iniciar Unity. La variable de entorno tiene prioridad sobre la alternancia del Editor.
Cuando el módulo de ubicación está deshabilitado, el SDK escribe dependencias nativas granulares en Assets/OneSignal/Editor/OneSignalAndroidDependencies.xml y Assets/OneSignal/Editor/OneSignaliOSDependencies.xml. Después de ejecutar Assets > External Dependency Manager > Android Resolver > Force Resolve, Android resuelve los módulos de OneSignal sin el artefacto de ubicación en Assets/Plugins/Android/mainTemplate.gradle. Las compilaciones de iOS usan pods de OneSignal sin OneSignalLocation. OneSignal.Location.RequestPermission() y asignar OneSignal.Location.IsShared no hacen nada en compilaciones nativas sin el módulo de ubicación. OneSignal.Location.IsShared devuelve false.

Aplicar el cambio después de que las dependencias nativas estén en caché

Si cambias esta configuración en un proyecto existente, limpia las salidas nativas obsoletas y vuelve a resolver las dependencias con el indicador configurado:
  • Elimina Assets/OneSignal/Editor/OneSignalAndroidDependencies.xml y Assets/OneSignal/Editor/OneSignaliOSDependencies.xml, luego vuelve a abrir el proyecto para que Unity los regenere desde ProjectSettings/OneSignalSettings.json.
  • Ejecuta Assets > External Dependency Manager > Android Resolver > Force Resolve para que Assets/Plugins/Android/mainTemplate.gradle use los paquetes sin ubicación.
  • Vuelve a exportar el proyecto Xcode de iOS y ejecuta pod install si es necesario.
  • Elimina Build/ y otras salidas generadas antes de volver a compilar.
En CI, exporta ONESIGNAL_DISABLE_LOCATION en el mismo entorno que inicia Unity. Incluye el valor del indicador en las claves de caché de Unity Library/, Gradle, CocoaPods y DerivedData para que una caché restaurada no vuelva a incluir el módulo de ubicación.

3. Inicializar el SDK

Agrega este código dentro del método Start() de un MonoBehaviour temprano en el ciclo de vida de tu aplicación. Reemplaza YOUR_APP_ID con tu ID de Aplicación de OneSignal encontrado en tu dashboard de OneSignal Settings > Keys & IDs.
Si no tienes acceso a la aplicación OneSignal, pide a tus Team Members que te inviten.
C#

Probar la integración del SDK de OneSignal

Esta guía le ayuda a verificar que su integración del SDK de OneSignal funciona correctamente probando notificaciones push, registro de suscripciones y mensajería in-app.
Si está probando con un emulador de Android, debe iniciarse con un arranque en frío.
  1. Vaya a Administrador de dispositivos en Android Studio.
  2. Seleccione su dispositivo emulador y haga clic en Editar.
  3. Vaya a Configuración adicional o Más.
  4. Establezca la Opción de arranque en Arranque en frío.
  5. Guarde los cambios y reinicie el emulador.

Verificar suscripciones móviles

1

Inicie su aplicación en un dispositivo de prueba.

El mensaje de permiso push nativo debe aparecer automáticamente si agregó el método requestPermission durante la inicialización.

Mensajes de permiso push de iOS y Android

2

Verifique su panel de OneSignal

Antes de aceptar el mensaje, verifique el panel de OneSignal:
  • Vaya a Audiencia > Suscripciones.
  • Debería ver una nueva entrada con el estado “Nunca suscrito”.

Panel mostrando suscripción con estado 'Nunca suscrito'

3

Regrese a la aplicación y toque Permitir en el mensaje.

4

Actualice la página de suscripciones del panel de OneSignal.

El estado de la suscripción ahora debería mostrar Suscrito.

Panel mostrando suscripción con estado 'Suscrito'

Ha creado exitosamente una suscripción móvil. Las suscripciones móviles se crean cuando los usuarios abren su aplicación por primera vez en un dispositivo o si desinstalan y reinstalan su aplicación en el mismo dispositivo.

Configurar suscripciones de prueba

Las suscripciones de prueba son útiles para probar una notificación push antes de enviar un mensaje.
1

Agregar a suscripciones de prueba.

En el panel, junto a la suscripción, haga clic en el botón Opciones (tres puntos) y seleccione Agregar a suscripciones de prueba.

Agregando un dispositivo a suscripciones de prueba

2

Nombre su suscripción.

Nombre la suscripción para que pueda identificar fácilmente su dispositivo más tarde en la pestaña de suscripciones de prueba.
3

Cree un segmento de usuarios de prueba.

Vaya a Audiencia > Segmentos > Nuevo segmento.
4

Nombre el segmento.

Nombre el segmento Test Users (el nombre es importante porque se usará más adelante).
5

Agregue el filtro de usuarios de prueba y haga clic en Crear segmento.

Creando un segmento de 'Usuarios de prueba' con el filtro de usuarios de prueba

Ha creado exitosamente un segmento de usuarios de prueba. Ahora podemos probar el envío de mensajes a este dispositivo individual y grupos de usuarios de prueba.

Enviar push de prueba mediante API

1

Obtenga su clave API de aplicación e ID de aplicación.

En su panel de OneSignal, vaya a Configuración > Claves e IDs.
2

Actualice el código proporcionado.

Reemplace YOUR_APP_API_KEY y YOUR_APP_ID en el código a continuación con sus claves reales. Este código usa el segmento Test Users que creamos anteriormente.
3

Ejecute el código.

Ejecute el código en su terminal.
4

Verifique imágenes y entrega confirmada.

Si todos los pasos de configuración se completaron exitosamente, las suscripciones de prueba deberían recibir una notificación con una imagen incluida:

Notificación push con imagen en iOS y Android

Las imágenes aparecerán pequeñas en la vista de notificación colapsada. Expanda la notificación para ver la imagen completa.
5

Verifique la entrega confirmada.

En su panel, vaya a Entrega > Mensajes enviados, luego haga clic en el mensaje para ver las estadísticas.Debería ver la estadística confirmado, lo que significa que el dispositivo recibió el push.
Ha enviado exitosamente una notificación mediante nuestra API a un segmento.
  • ¿No recibió la imagen? Es posible que falte su extensión de servicio de notificaciones.
  • ¿No hay entrega confirmada? Revise la guía de solución de problemas aquí.
  • ¿Tiene problemas? Copie y pegue la solicitud de API y un registro desde el inicio hasta el final del lanzamiento de la aplicación en un archivo .txt. Luego comparta ambos con support@onesignal.com.

Enviar un mensaje in-app

Los mensajes in-app le permiten comunicarse con los usuarios mientras están usando su aplicación.
1

Cierre o ponga en segundo plano su aplicación en el dispositivo.

Esto se debe a que los usuarios deben cumplir con los criterios de audiencia in-app antes de que comience una nueva sesión. En OneSignal, una nueva sesión comienza cuando el usuario abre su aplicación después de que ha estado en segundo plano o cerrada durante al menos 30 segundos. Para obtener más detalles, consulte nuestra guía sobre cómo se muestran los mensajes in-app.
2

Cree un mensaje in-app.

  • En su panel de OneSignal, navegue a Mensajes > In-App > Nuevo In-App.
  • Busque y seleccione el mensaje de Bienvenida.
  • Establezca su audiencia como el segmento de usuarios de prueba que usamos anteriormente.

Dirigiéndose al segmento de 'Usuarios de prueba' con un mensaje in-app

3

Personalice el contenido del mensaje si lo desea.

Ejemplo de personalización del mensaje de bienvenida in-app

4

Establezca el activador en 'Al abrir la aplicación'.

5

Programe la frecuencia.

En Programar > ¿Con qué frecuencia desea mostrar este mensaje? seleccione Cada vez que se cumplan las condiciones de activación.

Opciones de programación de mensajes in-app

6

Active el mensaje.

Haga clic en Activar mensaje para que esté disponible para sus usuarios de prueba cada vez que abran la aplicación.
7

Abra la aplicación y vea el mensaje.

Después de que el mensaje in-app esté activo, abra su aplicación. Debería verlo mostrarse:

Mensaje de bienvenida in-app mostrado en dispositivos

¿No ve el mensaje?
  • Inicie una nueva sesión
    • Debe cerrar o poner en segundo plano la aplicación durante al menos 30 segundos antes de volver a abrirla. Esto asegura que se inicie una nueva sesión.
    • Para obtener más información, consulte cómo se muestran los mensajes in-app.
  • ¿Sigue en el segmento de usuarios de prueba?
    • Si reinstaló o cambió de dispositivo, vuelva a agregar el dispositivo a suscripciones de prueba y confirme que forma parte del segmento de usuarios de prueba.
  • ¿Tiene problemas?
    • Siga Obtener un registro de depuración mientras reproduce los pasos anteriores. Esto generará un registro adicional que puede compartir con support@onesignal.com y le ayudaremos a investigar qué está sucediendo.
Ha configurado exitosamente el SDK de OneSignal y aprendió conceptos importantes como:Continúe con esta guía para identificar usuarios en su aplicación y configurar características adicionales.

Identificación de usuarios

Anteriormente, demostramos cómo crear suscripciones móviles. Ahora ampliaremos la identificación de usuarios en todas sus suscripciones (incluidas push, email y SMS) usando el SDK de OneSignal. Cubriremos IDs externos, etiquetas, suscripciones multicanal, privacidad y seguimiento de eventos para ayudarle a unificar e involucrar a los usuarios en todas las plataformas.

Asignar ID externo

Use un ID externo para identificar a los usuarios de manera consistente en todos los dispositivos, direcciones de correo electrónico y números de teléfono utilizando el identificador de usuario de su backend. Esto asegura que su mensajería permanezca unificada entre canales y sistemas de terceros (especialmente importante para integraciones). Establezca el ID externo con el método login de nuestro SDK cada vez que sean identificados por su aplicación.
OneSignal genera IDs únicos de solo lectura para suscripciones (ID de suscripción) y usuarios (ID de OneSignal).A medida que los usuarios descargan su aplicación en diferentes dispositivos, se suscriben a su sitio web y/o le proporcionan direcciones de correo electrónico y números de teléfono fuera de su aplicación, se crearán nuevas suscripciones.Configurar el ID externo mediante nuestro SDK es altamente recomendado para identificar usuarios en todas sus suscripciones, independientemente de cómo se creen.

Agregar etiquetas de datos

Las etiquetas son pares clave-valor de datos de cadena que puede usar para almacenar propiedades de usuario (como username, role o preferencias) y eventos (como purchase_date, game_level o interacciones de usuario). Las etiquetas potencian la personalización de mensajes avanzada y la segmentación, permitiendo casos de uso más avanzados. Establezca etiquetas con los métodos addTag y addTags de nuestro SDK a medida que ocurren eventos en su aplicación. En este ejemplo, el usuario alcanzó el nivel 6 identificable por la etiqueta llamada current_level establecida en un valor de 6.

Un perfil de usuario en OneSignal con una etiqueta llamada "current_level" establecida en "6"

Podemos crear un segmento de usuarios que tengan un nivel entre 5 y 10, y usar eso para enviar mensajes dirigidos y personalizados:

Editor de segmentos mostrando un segmento dirigido a usuarios con un valor de current_level mayor que 4 y menor que 10


Captura de pantalla mostrando una notificación push dirigida al segmento Nivel 5-10 con un mensaje personalizado


La notificación push se recibe en un dispositivo iOS y Android con el contenido personalizado

Agregar suscripciones de email y/o SMS

Anteriormente vimos cómo nuestro SDK crea suscripciones móviles para enviar mensajes push e in-app. También puede llegar a los usuarios a través de canales de email y SMS creando las suscripciones correspondientes. Si la dirección de correo electrónico y/o el número de teléfono ya existen en la aplicación de OneSignal, el SDK lo agregará al usuario existente, no creará duplicados. Puede ver usuarios unificados a través de Audiencia > Usuarios en el panel o con la API de ver usuario.

Un perfil de usuario con suscripciones push, email y SMS unificadas por ID externo

Mejores prácticas para la comunicación multicanal
  • Obtenga consentimiento explícito antes de agregar suscripciones de email o SMS.
  • Explique los beneficios de cada canal de comunicación a los usuarios.
  • Proporcione preferencias de canal para que los usuarios puedan seleccionar qué canales prefieren.

Privacidad y consentimiento del usuario

Para controlar cuándo OneSignal recopila datos de usuario, use los métodos de control de consentimiento del SDK: Consulte nuestra documentación de privacidad y seguridad para obtener más información sobre:

Solicitar permisos push

En lugar de llamar a requestPermission() inmediatamente al abrir la aplicación, adopte un enfoque más estratégico. Use un mensaje in-app para explicar el valor de las notificaciones push antes de solicitar permiso. Para mejores prácticas y detalles de implementación, consulte nuestra guía Solicitar permisos push.

Escuchar eventos push, de usuario e in-app

Use los oyentes del SDK para reaccionar a las acciones del usuario y cambios de estado. El SDK proporciona varios oyentes de eventos a los que puede conectarse. Consulte nuestra guía de referencia del SDK para obtener más detalles.

Eventos de notificación push

Para personalización completa, consulte extensiones de servicio móvil.

Cambios de estado del usuario

Eventos de mensajes in-app

  • addClickListener(): Maneje acciones de clic in-app. Ideal para enlaces profundos o seguimiento de eventos.
  • addLifecycleListener(): Rastree el ciclo de vida completo de los mensajes in-app (mostrados, clicados, descartados, etc.).

Configuración y capacidades avanzadas

Explore más capacidades para mejorar su integración:

Configuración y referencia del SDK móvil

Asegúrese de haber habilitado todas las características clave revisando la guía de configuración de push móvil. Para obtener detalles completos sobre los métodos disponibles y opciones de configuración, visite la referencia del SDK móvil.
¡Felicitaciones! Ha completado exitosamente la guía de configuración del SDK móvil.

¿Necesita ayuda?Chatee con nuestro equipo de Soporte o envíe un correo electrónico a support@onesignal.comPor favor incluya:
  • Detalles del problema que está experimentando y pasos para reproducir si están disponibles
  • Su ID de aplicación de OneSignal
  • El ID externo o ID de suscripción si corresponde
  • La URL del mensaje que probó en el panel de OneSignal si corresponde
  • Cualquier registro o mensaje de error relevante
¡Estamos felices de ayudar!