Skip to content

Solución de problemas de mensajes dentro de la aplicación

Usa esta página para diagnosticar por qué los mensajes dentro de la aplicación no se entregan o no se muestran en un dispositivo. Para la configuración del dashboard (prioridad, desencadenantes, Segments y reelegibilidad), consulta las preguntas frecuentes sobre mensajes dentro de la aplicación.

Antes de depurar, añádete como usuario de prueba y revisa Envío de mensajes de prueba.

Empieza aquí: identifica tu síntoma

Síntoma Ir a
El mensaje dentro de la aplicación no se mostró para un usuario Un usuario
El mensaje dentro de la aplicación no se mostró en una plataforma (Android, iOS o Web) Una plataforma
El mensaje dentro de la aplicación de un paso de Canvas no se mostró Mensajes dentro de la aplicación en Canvas
El mensaje dentro de la aplicación se mostró tarde o con retraso Temporización y visualización retrasada
Las impresiones o los clics parecen incorrectos Impresiones y análisis
triggers faltantes o vacíos en los registros de eventos de usuario Solución de problemas de entrega
Los desencadenantes se devolvieron pero nada se muestra en el dispositivo Solución de problemas de visualización específica por plataforma
Los activos del mensaje dentro de la aplicación no se cargan (iOS, NSURLError -1008) Carga de activos (pestaña Swift)

Ruta de investigación estándar

Usa este flujo de trabajo para cada incidente. Comienza en el paso 1.

  1. Confirma que se registra un inicio de sesión para el dispositivo de prueba. Los mensajes dentro de la aplicación se solicitan al inicio de sesión.
  2. Abre los registros de eventos de usuario y busca la solicitud del SDK para ese inicio de sesión. En Response Data:
  3. Para la elegibilidad del lado del dashboard (Segment, reelegibilidad, límites de frecuencia, prioridad, grupos de control), consulta Solución de problemas de entrega y las preguntas frecuentes sobre mensajes dentro de la aplicación.
  4. Para problemas de visualización del lado del dispositivo (delegados, límites de velocidad, orientación, tiempo de espera de sesión), selecciona la pestaña de tu SDK en Solución de problemas de visualización específica por plataforma.

Mensajes dentro de la aplicación en Canvas

Síntoma: Un usuario entró en un paso de mensaje dentro de la aplicación en Canvas pero no vio el mensaje cuando se esperaba.

Tres comportamientos generan la mayoría de los tickets de Canvas y mensajes dentro de la aplicación:

  1. Visualización en la siguiente sesión: Los mensajes dentro de la aplicación en Canvas son elegibles en el siguiente inicio de sesión después de que se procese el paso, no inmediatamente a mitad de sesión. Consulta ¿Cuándo se envían los mensajes dentro de la aplicación en Canvas? en las preguntas frecuentes de Canvas.
  2. Validaciones de entrega en la entrada del paso: Si Validar audiencia al enviar el mensaje está habilitado en el paso de mensaje, la pertenencia al Segment y los límites de frecuencia se evalúan cuando el usuario entra en el paso, no en el momento de la visualización. Consulta Validaciones de entrega.
  3. Retraso y tiempo de espera de sesión: Si un usuario entra en un paso de retraso más largo que el tiempo de espera de sesión de tu SDK, puede iniciar una nueva sesión antes del paso de mensaje dentro de la aplicación. Es posible que el mensaje no se obtenga en el inicio de sesión cuando esperas que se muestre.

Para ventanas de disponibilidad, expiración y cero Envíos en los análisis de Canvas, consulta Mensajes dentro de la aplicación y entrega en las preguntas frecuentes de Canvas.

El mensaje dentro de la aplicación no se mostró para un usuario

Síntoma: Un usuario no recibió un mensaje dentro de la aplicación esperado; otros usuarios pueden no estar afectados.

Comprueba lo siguiente:

Luego sigue la ruta de investigación estándar.

El mensaje dentro de la aplicación no se mostró en una plataforma

Síntoma: Los mensajes dentro de la aplicación no se muestran en Android, iOS o Web, pero pueden funcionar en otras plataformas.

Causa probable Qué comprobar
Objetivo de Send To incorrecto Confirma que la Campaign o el paso de Canvas apunta a Mobile Apps o Web Browsers según corresponda. Una Campaign solo para Web no se enviará a dispositivos Android.
Una UI personalizada o un controlador suprime la visualización Revisa los delegados (móvil) o braze.subscribeToInAppMessage (Web). Consulta Personalización y la pestaña de tu SDK a continuación.
La integración nunca funcionó en esta plataforma Confirma que esta plataforma y versión de la aplicación han mostrado mensajes dentro de la aplicación anteriormente.
El desencadenante no se activó en el dispositivo El desencadenante debe ocurrir localmente a través del SDK. Una llamada a la REST API no puede desencadenar un mensaje dentro de la aplicación en el SDK. Consulta Desencadenar mensajes.
triggers vacíos en los registros de eventos de usuario Segment, reelegibilidad, límite de frecuencia o grupo de control. Consulta Solución de problemas de mensajes no devueltos.

El mensaje dentro de la aplicación no se mostró para todos los usuarios

Síntoma: Ningún usuario o menos usuarios de los esperados recibieron el mensaje dentro de la aplicación.

Comprueba lo siguiente:

  • ¿Está la acción desencadenante configurada correctamente en el dashboard y en la integración de la aplicación?
  • ¿Interceptó un mensaje dentro de la aplicación de mayor prioridad la Campaign? Consulta las preguntas frecuentes sobre mensajes dentro de la aplicación.
  • ¿Estás usando una versión reciente del SDK? Algunos tipos de mensajes dentro de la aplicación tienen requisitos mínimos de SDK.
  • ¿Están las sesiones integradas correctamente? Confirma que los análisis de sesión funcionan para esta aplicación.
  • ¿Está una biblioteca de UI personalizada interfiriendo con la visualización? Consulta Personalización.

Luego sigue la ruta de investigación estándar.

Temporización y visualización retrasada

Síntoma: El mensaje dentro de la aplicación apareció más tarde de lo esperado o no hasta una nueva sesión.

Causas comunes:

  • Precarga en el inicio de sesión de la Campaign: Los mensajes dentro de la aplicación se almacenan en caché al inicio de sesión y se muestran cuando se activa el desencadenante. Un desencadenante que ocurre antes del siguiente inicio de sesión no se mostrará hasta esa sesión. Consulta Desencadenar mensajes.
  • Comportamiento de siguiente sesión en Canvas: Consulta Mensajes dentro de la aplicación en Canvas.
  • Retraso planificado en el dashboard: Confirma si hay un retraso configurado en la Campaign o el paso.
  • Condición de carrera en la sincronización de desencadenantes: Si los usuarios registran un evento inmediatamente después del inicio de sesión, es posible que los desencadenantes aún no se hayan sincronizado. Considera desencadenar a partir del inicio de sesión y segmentar por el evento deseado para que la entrega ocurra en la siguiente sesión después del evento.
  • Mensajes dentro de la aplicación secuenciales: Si estás aplazando o restaurando mensajes en un recorrido, consulta Aplazar mensajes dentro de la aplicación desencadenados.
  • Activos grandes o CDN lento: Optimiza las imágenes y el video para mensajes dentro de la aplicación HTML. En dispositivos móviles, las imágenes pueden descargarse antes de mostrarse en redes lentas; selecciona la pestaña de tu SDK a continuación para notas específicas de la plataforma.

Solución de problemas de entrega

La mayoría de los problemas con mensajes dentro de la aplicación son de entrega (el dispositivo no recibió los desencadenantes) o de visualización (los desencadenantes llegaron pero no se mostraron). Confirma primero la entrega y luego comprueba la visualización.

Solución de problemas de entrega

El SDK solicita mensajes dentro de la aplicación a los servidores de Braze al inicio de sesión. Confirma que el SDK está solicitando desencadenantes y que Braze los está devolviendo.

Comprueba si los mensajes se solicitan y se devuelven

  1. Añádete como usuario de prueba.
  2. Configura una Campaign de mensaje dentro de la aplicación dirigida a tu usuario.
  3. Inicia una nueva sesión en tu aplicación.
  4. En los registros de eventos de usuario, busca la solicitud del SDK para el evento de inicio de sesión. En Response Data:
    • En el JSON sin procesar, confirma que respond_with incluye "triggers": true.
    • La fila Requested Responses enumera las claves de nivel superior en la respuesta. Para mensajes dentro de la aplicación, espera triggers.
    • Las filas Trigger In-App Message enumeran cada mensaje dentro de la aplicación devuelto para esa solicitud.

    Luego clasifica:

  5. Confirma que los mensajes dentro de la aplicación correctos aparecen en los datos de respuesta.

Registro de eventos de usuario con solicitudes del SDK y datos de respuesta.

Solución de problemas de mensajes no solicitados

Si los mensajes dentro de la aplicación no se están solicitando, es posible que tu aplicación no esté rastreando las sesiones correctamente; los mensajes dentro de la aplicación se actualizan al inicio de sesión. Confirma que la aplicación está iniciando una sesión según la semántica de tiempo de espera de sesión:

La solicitud del SDK encontrada en los registros de eventos de usuario mostrando un evento de inicio de sesión exitoso.

Solución de problemas de mensajes no devueltos

Si los mensajes dentro de la aplicación no se están devolviendo, es probable que haya un problema de segmentación o elegibilidad:

  1. Tu Segment no contiene a tu usuario.
    • Comprueba la pestaña Interacción del usuario para el Segment esperado.
  2. Tu usuario ya recibió el mensaje y no era reelegible.
  3. Tu usuario alcanzó el límite de frecuencia.
  4. Tu usuario cayó en un grupo de control.
    • Crea un Segment con un filtro Received campaign variant establecido en Control, o excluye los grupos de control durante las pruebas de integración.
  5. Un mensaje dentro de la aplicación de mayor prioridad tuvo precedencia. Consulta las preguntas frecuentes sobre mensajes dentro de la aplicación.

Para Campaigns archivadas, configuración de desencadenantes y horas tranquilas, consulta las preguntas frecuentes sobre mensajes dentro de la aplicación.

Impresiones y análisis

Síntoma: Los recuentos de impresiones o clics no coinciden con las expectativas.

  • Impresiones mayores que Impresiones únicas: Es esperado cuando los usuarios tienen varios dispositivos o cuando un retraso planificado hace que el mismo usuario califique más de una vez. Consulta Reelegibilidad para Campaigns y Canvas.
  • Impresiones menores de lo esperado: Es posible que los usuarios no hayan visto el mensaje (las impresiones se registran al mostrarse), que varios mensajes de alta prioridad se intercepten entre sí, o que se apliquen condiciones de carrera en la sincronización de desencadenantes. Para mensajes dentro de la aplicación en Canvas, consulta Mensajes dentro de la aplicación en Canvas. Para definiciones completas de métricas, consulta Informes de mensajes dentro de la aplicación y las preguntas frecuentes sobre mensajes dentro de la aplicación.
  • Impresiones menores que antes: Revisa los registros de cambios del Segment y la Campaign. Confirma que no reutilizaste el mismo evento desencadenante en una Campaign de mayor prioridad.

Enlace para ver el registro de cambios en la página de detalles de la Campaign con siete cambios desde la última vez que el usuario vio la Campaign.

Si usas un delegado o un controlador personalizado para mostrar mensajes dentro de la aplicación manualmente, debes registrar las impresiones y los clics tú mismo. Consulta la pestaña de tu SDK en Solución de problemas de visualización específica por plataforma para detalles de Swift y Android, o Registrar datos de mensajes dentro de la aplicación para Web.

Solución de problemas de visualización específica por plataforma

Si aparecen filas Trigger In-App Message en los registros de eventos de usuario pero nada se muestra en el dispositivo, selecciona la pestaña de tu SDK para comprobaciones de visualización (delegados, límites de velocidad, orientación y controladores personalizados).

Solución de problemas de visualización

Si tu aplicación solicita y recibe mensajes dentro de la aplicación, pero no se muestran, es posible que la lógica del dispositivo esté impidiendo la visualización:

  1. ¿Se desencadena el evento como se espera? Para comprobarlo, configura el mensaje para que se desencadene mediante una acción diferente (como el inicio de sesión) y verifica si se muestra.

  2. Los mensajes desencadenados dentro de la aplicación tienen una tasa limitada en función del intervalo de tiempo mínimo entre desencadenamientos, que es de 30 segundos de forma predeterminada.

  3. Las descargas de imágenes fallidas impiden que se muestren los mensajes dentro de la aplicación con imágenes. Comprueba los registros del dispositivo en busca de fallos en las descargas. Prueba a eliminar temporalmente la imagen para ver si el mensaje se muestra.

  4. Si utilizas una gestión personalizada de mensajes dentro de la aplicación a través de braze.subscribeToInAppMessage, verifica que la devolución de llamada no está suprimiendo la visualización. Consulta Personalización.

Solución de problemas de visualización

Si tu aplicación solicita y recibe mensajes dentro de la aplicación, pero no se muestran, es posible que la lógica del dispositivo esté impidiendo la visualización:

  1. ¿Se desencadena el evento como se espera? Para comprobarlo, configura el mensaje para que se desencadene mediante una acción diferente (como el inicio de sesión) y verifica si se muestra.

  2. Los mensajes desencadenados dentro de la aplicación tienen una tasa limitada en función del intervalo de tiempo mínimo entre desencadenamientos, que es de 30 segundos de forma predeterminada.

  3. Las descargas de imágenes fallidas impiden que se muestren los mensajes dentro de la aplicación con imágenes. Comprueba los registros del dispositivo en busca de fallos en las descargas. Prueba a eliminar temporalmente la imagen para ver si el mensaje se muestra.

  4. Si has configurado un delegado para personalizar la gestión de mensajes dentro de la aplicación, confirma que no está suprimiendo la visualización. Consulta Personalización.

  5. Si la orientación del dispositivo no coincide con la configuración del mensaje dentro de la aplicación, el mensaje no se mostrará.

  6. Dependiendo de las condiciones de la red, es posible que las imágenes se descarguen antes de mostrarse. En conexiones lentas o dispositivos de bajo rendimiento, permite tiempo adicional u optimiza el tamaño de los activos.

Las impresiones y los clics no se registran

Si has configurado un delegado de mensajes dentro de la aplicación para gestionar manualmente la visualización del mensaje o las acciones de clic, debes registrar manualmente los clics y las impresiones en el mensaje dentro de la aplicación.

Solución de problemas de visualización

Si tu aplicación solicita y recibe mensajes dentro de la aplicación, pero no se muestran, es posible que la lógica del dispositivo esté impidiendo la visualización:

  1. ¿Se desencadena el evento como se espera? Para comprobarlo, configura el mensaje para que se desencadene mediante una acción diferente (como el inicio de sesión) y verifica si se muestra.

  2. Los mensajes desencadenados dentro de la aplicación tienen una tasa limitada en función del intervalo de tiempo mínimo entre desencadenamientos, que es de 30 segundos de forma predeterminada.

  3. Las descargas de imágenes fallidas impiden que se muestren los mensajes dentro de la aplicación con imágenes. Comprueba los registros del dispositivo en busca de fallos en las descargas. Prueba a eliminar temporalmente la imagen para ver si el mensaje se muestra.

  4. Si has configurado un delegado para personalizar la gestión de mensajes dentro de la aplicación, confirma que no está suprimiendo la visualización. Consulta Personalización.

  5. Si la orientación del dispositivo no coincide con la configuración del mensaje dentro de la aplicación, el mensaje no se mostrará.

  6. Dependiendo de las condiciones de la red, es posible que las imágenes se descarguen antes de mostrarse. En conexiones lentas o dispositivos de bajo rendimiento, permite tiempo adicional u optimiza el tamaño de los activos.

Las impresiones y los clics no se registran

Si has configurado un delegado de mensajes dentro de la aplicación para gestionar manualmente la visualización del mensaje o las acciones de clic, debes registrar los clics y las impresiones manualmente en el mensaje dentro de la aplicación.

Solución de problemas de carga de activos (NSURLError código -1008)

Al integrar Braze junto con bibliotecas de registro de red de terceros, los desarrolladores pueden encontrarse habitualmente con un NSURLError con el código de dominio -1008. Este error indica que activos como imágenes y fuentes no se han podido recuperar o no se han almacenado en caché. Para evitar estos casos, tendrás que registrar las URL de CDN de Braze en la lista de dominios que deben ser ignorados por estas bibliotecas.

Dominios

La lista completa de dominios CDN es la siguiente:

  • "appboy-images.com"
  • "braze-images.com"
  • "cdn.braze.eu"
  • "cdn.braze.com"

Ejemplos

A continuación se muestran las bibliotecas que se sabe que entran en conflicto con el almacenamiento en caché de activos de Braze, junto con código de ejemplo para solucionar el problema. Si tu proyecto utiliza una biblioteca que provoca un error de recurso no disponible y no aparece en la lista siguiente, consulta la documentación de esa biblioteca para conocer las API de uso similares.

Netfox
1
NFX.sharedInstance().ignoreURLs(["https://cdn.braze.com"])
1
[NFX.sharedInstance ignoreURLs:@[@"https://cdn.braze.com"]];
NetGuard
1
NetGuard.blackListHosts.append(contentsOf: ["cdn.braze.com"])
1
2
3
NSMutableArray<NSString *> *blackListHosts = [NetGuard.blackListHosts mutableCopy];
[blackListHosts addObject:@"cdn.braze.com"];
NetGuard.blackListHosts = blackListHosts;
XNLogger
1
2
let brazeAssetsHostFilter = XNHostFilter(host: "https://cdn.braze.com")
XNLogger.shared.addFilters([brazeAssetsHostFilter])
1
2
XNHostFilter *brazeAssetsHostFilter = [[XNHostFilter alloc] initWithHost: @"https://cdn.braze.com"];
[XNLogger.shared addFilters:@[brazeAssetsHostFilter]];
New Stuff!