Saltar al contenido

Guía de integración básica del SDK de Cordova

Esta sección contiene información sobre cómo integrar el SDK de Cordova de Pushwoosh en su aplicación.

Requisitos previos

Anchor link to

Para integrar el SDK de Cordova de Pushwoosh en su aplicación, necesitará lo siguiente:

Pasos de integración

Anchor link to

1. Añadir la dependencia del SDK de Cordova de Pushwoosh

Anchor link to

Añada la dependencia del SDK de Cordova de Pushwoosh a su proyecto:

Terminal window
cordova plugin add pushwoosh-cordova-plugin

2. Inicialización del SDK de Cordova

Anchor link to

En el componente raíz de su archivo index.js, añada el siguiente código dentro del manejador de eventos deviceready. Siga los pasos en el orden exacto:

index.js
document.addEventListener('deviceready', function() {
var pushwoosh = cordova.require("pushwoosh-cordova-plugin.PushNotification");
// 1. Registrar callbacks de notificación antes de la inicialización
document.addEventListener('push-receive', function(event) {
var notification = event.notification;
console.log("Push received: " + JSON.stringify(notification));
});
document.addEventListener('push-notification', function(event) {
var notification = event.notification;
console.log("Push opened: " + JSON.stringify(notification));
});
// 2. Inicializar Pushwoosh
pushwoosh.onDeviceReady({
appid: "__YOUR_APP_ID__",
projectid: "__YOUR_FCM_SENDER_ID__"
});
// 3. Registrar el dispositivo para recibir notificaciones push
pushwoosh.registerDevice(
function(status) {
var pushToken = status.pushToken;
// Manejar el registro exitoso
},
function(status) {
// Manejar el error de registro
}
);
}, false);

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 de la Consola de Firebase.

3. Configuración nativa de iOS

Anchor link to

3.1 Capacidades

Anchor link to

Para habilitar las Notificaciones Push en su proyecto, necesita añadir ciertas capacidades.

En la sección Signing & Capabilities, añada las siguientes capacidades:

  • Push Notifications
  • Background Modes. Después de añadir esta capacidad, marque la casilla Remote 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 to

En su Runner/Info.plist establezca la clave __PUSHWOOSH_DEVICE_API_TOKEN__ con el Token de API de Dispositivo de Pushwoosh:

info.plist
<key>Pushwoosh_API_TOKEN</key>
<string>__PUSHWOOSH_DEVICE_API_TOKEN__</string>

3.3 Seguimiento de la entrega de mensajes

Anchor link to

Debe 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 él.

4. Configuración nativa de Android

Anchor link to

4.1 Instalar dependencias

Anchor link to

Asegúrese de que las dependencias y plugins requeridos se añaden a sus scripts de Gradle:

Añada el plugin de Gradle de Google Services a las dependencias de su build.gradle a nivel de proyecto:

android/build.gradle
buildscript {
dependencies {
classpath 'com.google.gms:google-services:4.3.15'
}
}

Aplique el plugin en su archivo build.gradle a nivel de aplicación:

app/build.gradle
apply plugin: 'com.google.gms.google-services'

4.2 Añadir archivo de configuración de Firebase

Anchor link to

Coloque el archivo google-services.json en la carpeta android/app en el directorio de su proyecto.

4.3 Añadir metadatos de Pushwoosh

Anchor link to

En su main/AndroidManifest.xml añada el Token de API de Dispositivo de Pushwoosh dentro de la etiqueta <application>:

AndroidManifest.xml
<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. Ejecutar el Proyecto

Anchor link to
  1. Compile y ejecute el proyecto.
  2. Vaya al Panel de Control de Pushwoosh y envíe una notificación push.
  3. Debería ver la notificación en la aplicación.

Integración extendida

Anchor link to

En esta etapa, ya ha integrado el SDK y puede enviar y recibir notificaciones push. Ahora, exploremos la funcionalidad principal

Escuchas de eventos de notificación push

Anchor link to

En el SDK de Pushwoosh hay dos escuchas de eventos, diseñados para manejar notificaciones push:

  • El evento push-receive se dispara cuando se recibe una notificación push mientras la aplicación está en primer plano
  • El evento push-notification se dispara cuando un usuario abre una notificación

Estos escuchas de eventos deben registrarse antes de llamar a onDeviceReady(), como se muestra en el paso de inicialización anterior. Puede personalizar la lógica del manejador para que se ajuste a sus necesidades:

index.js
// Registrar antes de onDeviceReady()
document.addEventListener('push-receive', function(event) {
var message = event.notification.message;
var payload = event.notification.userdata;
console.log("Push received: " + message);
// Añada su lógica personalizada aquí
});
document.addEventListener('push-notification', function(event) {
var message = event.notification.message;
var payload = event.notification.userdata;
console.log("Push accepted: " + message);
// Añada su lógica personalizada aquí (p. ej., navegar a una pantalla específica)
});

Configuración de usuario

Anchor link to

Al 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.

class Registration {
afterUserLogin(user) {
// Establecer ID de usuario
pushwoosh.setUserId(user.getId());
// Estableciendo información adicional del usuario como etiquetas para Pushwoosh
pushwoosh.setTags({
"age": user.getAge(),
"name": user.getName(),
"last_login": user.getLastLoginDate()
});
}
}

Las etiquetas son pares clave-valor asignados a usuarios o dispositivos, lo que permite la segmentación basada en atributos como preferencias o comportamiento, habilitando la mensajería dirigida.

class UpdateUser {
afterUserUpdateProfile(user) {
// Establecer lista de categorías favoritas
pushwoosh.setTags({
"favorite_categories": user.getFavoriteCategoriesList()
});
// Establecer información de pago
pushwoosh.setTags({
"is_subscribed": user.isSubscribed(),
"payment_status": user.getPaymentStatus(),
"billing_address": user.getBillingAddress()
});
}
}

Los eventos son acciones específicas del usuario u ocurrencias dentro de la aplicación que se pueden rastrear para analizar el comportamiento y desencadenar los mensajes o acciones correspondientes.

class Registration {
// Rastrear evento de inicio de sesión
afterUserLogin(user) {
pushwoosh.postEvent("login", {
"name": user.getName(),
"last_login": user.getLastLoginDate()
});
}
// Rastrear evento de compra
afterUserPurchase(product) {
pushwoosh.postEvent("purchase", {
"product_id": product.getId(),
"product_name": product.getName(),
"price": product.getPrice(),
"quantity": product.getQuantity()
});
}
}

Solución de problemas

Anchor link to

Si encuentra algún problema durante el proceso de integración, consulte la sección de soporte y comunidad.