Saltar al contenido

Mostrar un in-app antes de la solicitud de permiso para notificaciones push

Un in-app de pre-permiso es un mensaje que muestras antes de la solicitud de permiso de notificaciones push del sistema. Úsalo para explicar por qué las notificaciones push son útiles, y luego pide permiso solo después de que el usuario diga que sí en tu in-app.

En iOS, la solicitud del sistema aparece solo una vez por instalación. Si el usuario toca No permitir, la aplicación no puede volver a mostrar esa solicitud. Las notificaciones push permanecen desactivadas hasta que el usuario las active en los Ajustes. Preguntar primero en el in-app significa que solo utilizas esa única oportunidad con los usuarios que ya te han dicho que sí.

Usa esta guía si quieres diseñar una solicitud HTML multiplataforma en el Panel de Control y activarla por evento tanto en iOS como en Android.

Usa una guía diferente si:

Antes de empezar

Anchor link to

Pushwoosh nunca muestra el diálogo de permiso del sistema por sí solo. No hay nada que configurar en el Panel de Control para retrasarlo. El diálogo aparece solo cuando el usuario toca el botón de aceptar en tu in-app.

Trabaja con tu equipo de desarrollo en estos prerrequisitos:

  1. Confirma que la aplicación no solicita el permiso de notificaciones push antes (incluido en el primer lanzamiento).
  2. Acuerda un nombre de evento personalizado y cuándo activarlo, por ejemplo onboarding_completed justo después de la incorporación, o locked_feature_tapped cuando el usuario toca una función que necesita notificaciones. Tu equipo llamará a postEvent con ese nombre. Aprende más sobre los eventos.

Construye el in-app

Anchor link to

Los botones en esta guía se ejecutan con JavaScript personalizado, que solo funciona en una plantilla de in-app basada en HTML. Una plantilla de in-app nativa no puede ejecutar este código, así que no construyas la plantilla con In-app nativo.

  1. Ve a Contenido → In-Apps y haz clic en Crear in-app para abrir directamente el editor integrado.
  2. Introduce un nombre para la plantilla.
  3. Abre la pestaña Bloques en el panel derecho y añade un bloque de texto o de encabezado con tu argumento para activar las notificaciones push.
Lienzo del editor con un encabezado 'Mantente al día' y texto de presentación añadidos, con la pestaña Bloques abierta en el panel derecho
  1. Añade un bloque de botón para la acción de aceptar y otro para la acción de rechazar. Ambos botones pueden ejecutar su JavaScript tan pronto como se cargue el in-app, sin necesidad de esperar a nada más.
Lienzo del editor con el texto de presentación y los botones 'Activar notificaciones' y 'Ahora no' añadidos
  1. Selecciona el botón de aceptar y establece el Tipo de acción en Javascript personalizado.
  2. Pega solo el siguiente código en onClick.
pushwoosh.registerForPushNotifications();
pushwoosh.closeInApp();
  1. Selecciona el botón de rechazar y establece el Tipo de acción en Javascript personalizado.
  2. Pega solo esto en onClick:
pushwoosh.closeInApp();

Después de guardar la plantilla:

  • Botón de aceptar: aparece el diálogo de permiso del sistema.
  • Botón de rechazar: el in-app se cierra y no aparece ningún diálogo del sistema.
Hoja inferior de in-app de pre-permiso con los botones Activar notificaciones y Ahora no, mostrada sobre la pantalla de la aplicación en iOS
Un in-app de pre-permiso mostrado antes de la solicitud del sistema

Omitir la solicitud para usuarios que ya han optado por participar

Anchor link to

Añade una condición de visualización para que el in-app se oculte para los usuarios que ya han concedido el permiso de notificaciones push, incluso si un activador posterior vuelve a mostrar la plantilla. El estado de consentimiento de push proviene de Push Alerts Enabled, una etiqueta booleana predeterminada que el SDK establece a partir del permiso de notificación del sistema del dispositivo.

  1. En el panel Capas, haz clic en el primer bloque, luego mantén pulsada la tecla Mayús y haz clic en todos los demás bloques para seleccionar toda la plantilla junta.
  2. Activa Mostrar este bloque condicionalmente. La regla que establezcas a continuación se aplica a toda la selección a la vez.
  3. Establece la regla en Push Alerts Enabled es falso.
  4. En Si el valor es desconocido, elige Mostrar bloque. Una instalación nueva sin valor de etiqueta aún debería ver la solicitud.
Todos los bloques seleccionados juntos en el editor, con la opción 'Mostrar este bloque condicionalmente' activada, la regla establecida en 'Push Alerts Enabled es falso' y 'Si el valor es desconocido' configurado como 'Mostrar bloque'

Activar el in-app antes de que se solicite el permiso

Anchor link to

Un dispositivo que aún no ha pasado por el registro no tiene un token push, por lo que no puedes contactarlo con una notificación push. Activa el in-app mediante el evento personalizado que acordaste con el equipo de desarrollo.

  1. Pide a tu equipo de desarrollo que llame a postEvent con el nombre del evento acordado en el momento en que quieras hacer la solicitud.
  2. Ve a Customer Journey Builder → Crear Campaña y comienza con una Entrada basada en activador que escuche ese evento.
  3. Añade un elemento In-app y selecciona la plantilla que creaste. Aprende más sobre el envío de in-apps a través de Customer Journey.
  4. Lanza el Journey cuando estés listo para mostrar la solicitud.

Escenario de ejemplo: pedir permiso de notificaciones push justo después de la incorporación

Anchor link to

Imagina que quieres pedir permiso para las notificaciones push en el momento en que un usuario termina la incorporación, en lugar de interrumpir el tutorial en sí.

  1. Crea el evento onboarding_completed y confirma que tu equipo de desarrollo lo activa cuando el usuario finaliza el flujo de incorporación. Aprende más sobre la creación de eventos
  2. Establece onboarding_completed como el activador de tu Journey, utilizando una Entrada basada en activador.
  3. Añade un elemento In-app y selecciona la plantilla de pre-permiso que creaste.
  4. Lanza el Journey.

Cada usuario que completa la incorporación ve la solicitud una vez. La condición de visualización de Omitir la solicitud para usuarios que ya han optado por participar evita que se active de nuevo para los usuarios que ya concedieron el permiso de notificaciones push.

Comprueba que ha funcionado

Anchor link to

La solicitud del sistema es de una sola vez, por lo que probar ambos botones requiere dos dispositivos de prueba (o dos instalaciones nuevas) que aún no hayan concedido o denegado el permiso de notificaciones push, uno para cada botón. En cada dispositivo:

  1. Activa el evento acordado desde la aplicación.
  2. Vuelve a abrir la aplicación y confirma que el Journey entrega tu in-app.

Luego:

  1. En el primer dispositivo, toca el botón de aceptar y confirma que aparece el diálogo de permiso del sistema.
  2. En el segundo dispositivo, toca el botón de rechazar y confirma que el in-app se cierra sin ningún diálogo del sistema.
  3. Después de la siguiente apertura de la aplicación, confirma que Push Alerts Enabled coincide con el estado de permiso en cada dispositivo.

Construir un segmento de usuarios que todavía tienen las notificaciones push desactivadas

Anchor link to

Filtra por Push Alerts Enabled para encontrar usuarios que rechazaron o nunca concedieron el permiso. La etiqueta es false cuando las notificaciones push aún no están permitidas, incluso antes de que el usuario haya visto el diálogo del sistema, por lo que un dispositivo en estado de pre-permiso ya cae en este segmento.

  1. En el constructor de segmentos, añade un filtro por la etiqueta Push Alerts Enabled.
  2. Establece el operador en es falso. Aprende más sobre la creación de segmentos por etiquetas.

Utiliza este segmento para retener una solicitud repetida de los usuarios que aún no tienen las notificaciones push activadas, o para ejecutar un Journey periódico de recuperación. Consulta el segmento de recuperación de opt-out para ver un ejemplo práctico con la misma etiqueta.

Ver también

Anchor link to