Guía de integración básica del SDK de Unity
Esta sección contiene información sobre cómo integrar el SDK de Pushwoosh para Unity en su aplicación.
Prerrequisitos
Anchor link toPara integrar el SDK de Pushwoosh para Unity en su aplicación, necesitará lo siguiente:
Pasos de integración
Anchor link to1. Añadir la dependencia del SDK de Pushwoosh para Unity
Anchor link toImporte el plugin de notificaciones push de Unity en su carpeta Assets en Unity.
2. Inicialización del SDK de Unity
Anchor link toCree el script PushNotificator.cs y adjúntelo al Camera Object en la escena.
En el script:
- Inicialice el SDK de Pushwoosh con el código de la aplicación y el número de proyecto de Firebase.
- Llame a
RegisterForPushNotifications()en su lógica de inicialización para registrarse para recibir notificaciones push. - Añada manejadores de eventos de registro para gestionar los eventos de registro de push:
using UnityEngine;using UnityEngine.UI;
public class PushNotificator : MonoBehaviour { void Start () { Pushwoosh.ApplicationCode = "__YOUR_APP_ID__"; Pushwoosh.FcmProjectNumber = "__YOUR_FCM_SENDER_ID__"; Pushwoosh.Instance.OnRegisteredForPushNotifications += OnRegisteredForPushNotifications; Pushwoosh.Instance.OnFailedToRegisteredForPushNotifications += OnFailedToRegisteredForPushNotifications; Pushwoosh.Instance.RegisterForPushNotifications(); }
void OnRegisteredForPushNotifications(string token) { Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, "Received token: \n{0}", token); }
void OnFailedToRegisteredForPushNotifications(string error) { Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, "Error ocurred while registering to push notifications: \n{0}", error); }}Donde:
__YOUR_APP_ID__es el código de la aplicación del Panel de Control de Pushwoosh.__YOUR_FCM_SENDER_ID__es el número de proyecto de Firebase desde la Consola de Firebase.
3. Configuración nativa de iOS
Anchor link to3.1 Capacidades
Anchor link toPara habilitar las Notificaciones Push en su proyecto, necesita añadir ciertas capacidades.
En la sección Signing & Capabilities, añada las siguientes capacidades:
Push NotificationsBackground Modes. Después de añadir esta capacidad, marque la casilla paraRemote notifications.
Si tiene la intención de usar Notificaciones Sensibles al Tiempo (iOS 15+), añada también la capacidad Time Sensitive Notifications.
3.2 Info.plist
Anchor link toEn su Runner/Info.plist establezca la clave __PUSHWOOSH_DEVICE_API_TOKEN__ al Token de API de Dispositivo de Pushwoosh:
<key>Pushwoosh_API_TOKEN</key><string>__PUSHWOOSH_DEVICE_API_TOKEN__</string>3.3 Seguimiento de la entrega de mensajes
Anchor link toDebe añadir un objetivo de Extensión de Servicio de Notificación a su proyecto. Esto es esencial para un seguimiento preciso de la entrega y para características como Rich Media en iOS.
Siga los pasos de la guía nativa para añadir el objetivo de la extensión y el código de Pushwoosh necesario dentro de ella.
4. Configuración nativa de Android
Anchor link to4.1 Añadir archivo de configuración de Firebase
Anchor link toColoque el archivo google-services.json en la carpeta Assets en el directorio de su proyecto.
4.2 Ajustar la configuración de compilación
Anchor link toEn la sección Publishing Settings de su perfil de compilación de Android, habilite la opción Custom Main Manifest.
4.3 Añadir metadatos de Pushwoosh
Anchor link toEn su Assets/Plugins/Android/AndroidManifest.xml añada el Token de API de Dispositivo de Pushwoosh dentro de la etiqueta <application>:
<meta-data android:name="com.pushwoosh.apitoken" android:value="__YOUR_DEVICE_API_TOKEN__" />Importante: Asegúrese de dar al token acceso a la aplicación correcta en su Panel de Control de Pushwoosh. Aprenda más
5. Integración con la Tienda de Windows
Anchor link to- Añada
link.xmla su directorioAssets/con el siguiente contenido:
<linker> <assembly fullname="PushSDK" preserve="all"/></linker>- También necesita Asociar la aplicación con la Tienda en el proyecto exportado de Visual Studio. Asegúrese de que su aplicación esté firmada con un certificado que coincida con su Identidad de Editor.

Opte por la capacidad de Internet (Cliente) en la pestaña Capacidades de su .appxmanifest en el proyecto exportado de Visual Studio.
6. Ejecutar el proyecto
Anchor link to- Compile y ejecute el proyecto.
- Vaya al Panel de Control de Pushwoosh y envíe una notificación push.
- Debería ver la notificación en la aplicación.
Integración extendida
Anchor link toEn esta etapa, ya ha integrado el SDK y puede enviar y recibir notificaciones push. Ahora, exploremos la funcionalidad principal
Escuchadores de eventos de notificación push
Anchor link toEn el SDK de Pushwoosh hay dos escuchadores de eventos, diseñados para manejar notificaciones push:
- El evento
OnPushNotificationsReceivedse activa cuando se recibe una notificación push - El evento
OnPushNotificationsOpenedse activa cuando un usuario abre una notificación
Debe configurar estos escuchadores de eventos justo después de la inicialización del SDK en el PushNotificator.cs:
using UnityEngine;using UnityEngine.UI;
public class PushNotificator : MonoBehaviour { void Start () { Pushwoosh.ApplicationCode = "__YOUR_APP_ID__"; Pushwoosh.FcmProjectNumber = "__YOUR_FCM_SENDER_ID__"; Pushwoosh.Instance.OnPushNotificationsReceived += OnPushNotificationsReceived; Pushwoosh.Instance.OnPushNotificationsOpened += OnPushNotificationsOpened; Pushwoosh.Instance.RegisterForPushNotifications(); }
void OnPushNotificationsReceived(string payload) { Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, "Received push notificaiton: \n{0}", payload); }
void OnPushNotificationsOpened(string payload) { Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, "Opened push notificaiton: \n{0}", payload); }Configuración de usuario
Anchor link toAl centrarse en el comportamiento y las preferencias individuales de los usuarios, puede entregar contenido personalizado, lo que conduce a una mayor satisfacción y lealtad del usuario
public class Registration { public void afterUserLogin(User user) {
// Set user ID Pushwoosh.Instance.SetUserId(user.getId());
// Set user email Pushwoosh.Instance.SetEmail(user.getEmail());
// Setting additional user information as tags for Pushwoosh Pushwoosh.Instance.SetIntTag("Age", user.getAge()); Pushwoosh.Instance.SetStringTag("Name", user.getName()); Pushwoosh.Instance.SetStringTag("LastLoginDate", user.getLastLoginDate()); }}Tags
Anchor link toLos tags son pares clave-valor asignados a usuarios o dispositivos, que permiten la segmentación basada en atributos como preferencias o comportamiento, habilitando la mensajería dirigida.
public class UpdateUser { public void afterUserUpdateProfile(User user) {
// Set list of favorite categories Pushwoosh.Instance.SetListTag( "favorite_categories": user.getFavoriteCategoriesList() );
// Set payment information Pushwoosh.Instance.SetStringTag("is_subscribed", user.isSubscribed()); Pushwoosh.Instance.SetStringTag("payment_status", user.getPaymentStatus()); Pushwoosh.Instance.SetStringTag("billing_address", user.getBillingAddress()); }}Eventos
Anchor link toLos eventos son acciones específicas del usuario u ocurrencias dentro de la aplicación que se pueden rastrear para analizar el comportamiento y activar los mensajes o acciones correspondientes
public class Registration {
// Track login event public void afterUserLogin(User user) { Pushwoosh.Instance.PostEvent("login", new Dictionary<string, object>() { { "name", user.getName() }, { "last_login", user.getLastLoginDate() } }); }
public void afterUserPurchase(Product product) { // Track purchase event Pushwoosh.Instance.PostEvent("purchase", new Dictionary<string, object>() { { "product_id", product.getId() }, { "product_name", product.getName() }, { "price", product.getPrice() }, { "quantity", product.getQuantity() } }); }}Solución de problemas
Anchor link toSi encuentra algún problema durante el proceso de integración, consulte la sección de soporte y comunidad.