Skip to content

Résolution des problèmes des messages in-app

Utilisez cette page pour diagnostiquer pourquoi les messages in-app ne sont pas distribués ou affichés sur un appareil. Pour la configuration côté tableau de bord (priorité, déclencheurs, segments et rééligibilité), consultez la FAQ sur les messages in-app.

Avant de déboguer, ajoutez-vous en tant qu’utilisateur test et consultez Envoyer des messages de test.

Commencez ici : identifiez votre symptôme

Symptôme Aller à
Le message in-app ne s’est pas affiché pour un utilisateur Un utilisateur
Le message in-app ne s’est pas affiché sur une plateforme (Android, iOS ou Web) Une plateforme
Le message in-app d’une étape Canvas ne s’est pas affiché Messages in-app Canvas
Le message in-app s’est affiché en retard ou après un délai Timing et affichage différé
Les impressions ou les clics semblent incorrects Impressions et analyses
triggers manquant ou vide dans les journaux des événements utilisateurs Résolution des problèmes de distribution
Les déclencheurs sont retournés mais rien ne s’affiche sur l’appareil Résolution des problèmes d’affichage par plateforme
Le chargement des ressources du message in-app échoue (iOS, NSURLError -1008) Chargement des ressources (onglet Swift)

Parcours d’investigation standard

Utilisez ce flux de travail pour chaque incident. Commencez à l’étape 1.

  1. Confirmez qu’un démarrage de session est enregistré pour l’appareil de test. Les messages in-app sont demandés au démarrage de la session.
  2. Ouvrez les journaux des événements utilisateurs et trouvez la requête SDK pour ce démarrage de session. Dans Response Data :
  3. Pour l’éligibilité côté tableau de bord (segment, rééligibilité, plafonds de fréquence, priorité, groupes de contrôle), consultez Résolution des problèmes de distribution et la FAQ sur les messages in-app.
  4. Pour les problèmes d’affichage côté appareil (délégués, limites de débit, orientation, délai d’expiration de session), sélectionnez votre onglet SDK sous Résolution des problèmes d’affichage par plateforme.

Messages in-app Canvas

Symptôme : Un utilisateur est entré dans une étape de message in-app Canvas mais n’a pas vu le message au moment attendu.

Trois comportements sont à l’origine de la plupart des tickets liés aux Canvas et aux messages in-app :

  1. Affichage à la session suivante : Les messages in-app Canvas sont éligibles au prochain démarrage de session après le traitement de l’étape, et non immédiatement en cours de session. Voir Quand les messages in-app dans Canvas sont-ils envoyés ? dans la FAQ Canvas.
  2. Validations de distribution à l’entrée de l’étape : Si Valider l’audience à l’envoi du message est activé sur l’étape Message, l’appartenance au segment et les plafonds de fréquence sont évalués lorsque l’utilisateur entre dans l’étape, et non au moment de l’affichage. Voir Validations de distribution.
  3. Délai et expiration de session : Si un utilisateur entre dans une étape de délai plus longue que le délai d’expiration de session de votre SDK, il peut démarrer une nouvelle session avant l’étape du message in-app. Le message pourrait ne pas être récupéré au démarrage de la session au moment où vous vous attendez à ce qu’il s’affiche.

Pour les fenêtres de disponibilité, l’expiration et les Envois à zéro dans les analyses Canvas, consultez Messages in-app et distribution dans la FAQ Canvas.

Le message in-app ne s’est pas affiché pour un utilisateur

Symptôme : Un utilisateur n’a pas reçu un message in-app attendu ; les autres utilisateurs peuvent ne pas être affectés.

Vérifiez les points suivants :

Suivez ensuite le parcours d’investigation standard.

Le message in-app ne s’est pas affiché sur une plateforme

Symptôme : Les messages in-app ne s’affichent pas sur Android, iOS ou Web, mais peuvent fonctionner sur d’autres plateformes.

Cause probable Ce qu’il faut vérifier
Mauvaise cible Envoyer à Confirmez que la campagne ou l’étape Canvas cible Applications mobiles ou Navigateurs web selon le cas. Une campagne Web uniquement ne sera pas envoyée aux appareils Android.
Une interface personnalisée ou un gestionnaire supprime l’affichage Vérifiez les délégués (mobile) ou braze.subscribeToInAppMessage (Web). Voir Personnalisation et votre onglet SDK ci-dessous.
L’intégration n’a jamais fonctionné sur cette plateforme Confirmez que cette plateforme et cette version de l’application ont déjà affiché des messages in-app.
Le déclencheur ne s’est pas activé sur l’appareil Le déclencheur doit se produire localement via le SDK. Un appel REST API ne peut pas déclencher un message in-app dans le SDK. Voir Déclencher des messages.
triggers vide dans les journaux des événements utilisateurs Segment, rééligibilité, plafond de fréquence ou groupe de contrôle. Voir Résoudre les problèmes de messages non retournés.

Le message in-app ne s’est affiché pour aucun utilisateur

Symptôme : Aucun utilisateur ou moins d’utilisateurs que prévu n’a reçu le message in-app.

Vérifiez les points suivants :

  • L’action de déclenchement est-elle correctement configurée dans le tableau de bord et dans l’intégration de l’application ?
  • Un message in-app de priorité supérieure a-t-il intercepté la campagne ? Voir la FAQ sur les messages in-app.
  • Utilisez-vous une version récente du SDK ? Certains types de messages in-app ont des exigences minimales de version SDK.
  • Les sessions sont-elles correctement intégrées ? Confirmez que les analyses de session fonctionnent pour cette application.
  • Une bibliothèque d’interface personnalisée interfère-t-elle avec l’affichage ? Voir Personnalisation.

Suivez ensuite le parcours d’investigation standard.

Timing et affichage différé

Symptôme : Le message in-app est apparu plus tard que prévu ou seulement lors d’une nouvelle session.

Causes courantes :

  • Préchargement au démarrage de session : Les messages in-app sont mis en cache au démarrage de la session et s’affichent lorsque le déclencheur se produit. Un déclencheur qui se produit avant le prochain démarrage de session ne s’affichera pas avant cette session. Voir Déclencher des messages.
  • Comportement de session suivante dans Canvas : Voir Messages in-app Canvas.
  • Délai planifié dans le tableau de bord : Vérifiez si un délai est configuré sur la campagne ou l’étape.
  • Condition de concurrence des déclencheurs : Si les utilisateurs enregistrent un événement immédiatement après le démarrage de la session, les déclencheurs peuvent ne pas encore être synchronisés. Envisagez de déclencher sur le démarrage de session et de segmenter sur l’événement visé afin que la distribution se fasse à la session suivante après l’événement.
  • Messages in-app séquentiels : Si vous différez ou restaurez des messages dans un parcours, voir Différer les messages in-app déclenchés.
  • Ressources volumineuses ou CDN lent : Optimisez les images et les vidéos pour les messages in-app HTML. Sur mobile, les images peuvent être téléchargées avant l’affichage sur les réseaux lents — sélectionnez votre onglet SDK ci-dessous pour les notes spécifiques à la plateforme.

Résolution des problèmes de distribution

La plupart des problèmes de messages in-app relèvent de la distribution (l’appareil n’a pas reçu les déclencheurs) ou de l’affichage (les déclencheurs sont arrivés mais ne se sont pas affichés). Confirmez d’abord la distribution, puis vérifiez l’affichage.

Résoudre les problèmes de distribution

Le SDK demande les messages in-app aux serveurs Braze au démarrage de la session. Confirmez que le SDK demande les déclencheurs et que Braze les retourne.

Vérifier si les messages sont demandés et retournés

  1. Ajoutez-vous en tant qu’utilisateur test.
  2. Configurez une campagne de message in-app ciblant votre utilisateur.
  3. Démarrez une nouvelle session dans votre application.
  4. Dans les journaux des événements utilisateurs, trouvez la requête SDK pour l’événement de démarrage de session. Dans Response Data :
    • Dans le JSON brut, confirmez que respond_with inclut "triggers": true.
    • La ligne Requested Responses liste les clés de premier niveau dans la réponse. Pour les messages in-app, attendez-vous à triggers.
    • Les lignes Trigger In-App Message listent chaque message in-app retourné pour cette requête.

    Puis triez :

  5. Confirmez que les messages in-app corrects apparaissent dans les données de réponse.

Journal des événements utilisateurs avec les requêtes SDK et les données de réponse.

Résoudre les problèmes de messages non demandés

Si les messages in-app ne sont pas demandés, votre application ne suit peut-être pas correctement les sessions — les messages in-app se rafraîchissent au démarrage de la session. Confirmez que l’application démarre une session en fonction de la sémantique de votre délai d’expiration de session :

La requête SDK trouvée dans les journaux des événements utilisateurs affichant un événement de démarrage de session réussi.

Résoudre les problèmes de messages non retournés

Si les messages in-app ne sont pas retournés, vous rencontrez probablement un problème de ciblage ou d’éligibilité :

  1. Votre segment ne contient pas votre utilisateur.
    • Vérifiez l’onglet Engagement de l’utilisateur pour le segment attendu.
  2. Votre utilisateur a déjà reçu le message et n’était pas rééligible.
  3. Votre utilisateur a atteint le plafond de fréquence.
  4. Votre utilisateur est tombé dans un groupe de contrôle.
    • Créez un segment avec un filtre A reçu une variante de campagne défini sur Contrôle, ou désactivez les groupes de contrôle pendant les tests d’intégration.
  5. Un message in-app de priorité supérieure a pris le dessus. Voir la FAQ sur les messages in-app.

Pour les campagnes archivées, la configuration des déclencheurs et les heures calmes, consultez la FAQ sur les messages in-app.

Impressions et analyses

Symptôme : Le nombre d’impressions ou de clics ne correspond pas aux attentes.

  • Impressions supérieures aux Impressions uniques : Cela est attendu lorsque les utilisateurs possèdent plusieurs appareils ou lorsqu’un délai planifié fait qu’un même utilisateur se qualifie plus d’une fois. Voir Rééligibilité pour les Campaigns et Canvas.
  • Impressions inférieures aux attentes : Les utilisateurs peuvent ne pas avoir vu le message (les impressions sont enregistrées à l’affichage), plusieurs messages de haute priorité peuvent s’intercepter mutuellement, ou des conditions de concurrence des déclencheurs peuvent s’appliquer. Pour les messages in-app Canvas, voir Messages in-app Canvas. Pour les définitions complètes des indicateurs, voir Rapports sur les messages in-app et la FAQ sur les messages in-app.
  • Impressions inférieures à avant : Consultez les journaux de modifications du segment et de la campagne. Confirmez que vous n’avez pas réutilisé le même événement déclencheur dans une campagne de priorité supérieure.

Lien pour consulter le journal des modifications sur la page Détails de la campagne avec sept modifications depuis la dernière consultation par l'utilisateur.

Si vous utilisez un délégué ou un gestionnaire personnalisé pour afficher les messages in-app manuellement, vous devez enregistrer les impressions et les clics vous-même. Consultez votre onglet SDK sous Résolution des problèmes d’affichage par plateforme pour les détails Swift et Android, ou Enregistrer les données des messages in-app pour le Web.

Résolution des problèmes d’affichage par plateforme

Si des lignes Trigger In-App Message apparaissent dans les journaux des événements utilisateurs mais que rien ne s’affiche sur l’appareil, sélectionnez votre onglet SDK pour les vérifications d’affichage (délégués, limites de débit, orientation et gestionnaires personnalisés).

Résolution des problèmes d’affichage

Si votre application demande et reçoit des messages in-app mais qu’ils ne s’affichent pas, il se peut que la logique côté appareil empêche l’affichage :

  1. L’événement déclencheur se déclenche-t-il comme prévu ? Pour le vérifier, configurez le message pour qu’il se déclenche à l’aide d’une action différente (comme le démarrage d’une session) et vérifiez s’il s’affiche.

  2. Les messages in-app déclenchés sont soumis à une limitation de débit basée sur l’intervalle de temps minimum entre les déclenchements, qui est de 30 secondes par défaut.

  3. Les échecs de téléchargement d’images empêchent l’affichage des messages in-app contenant des images. Vérifiez les journaux de votre appareil pour détecter d’éventuels échecs de téléchargement. Essayez de supprimer temporairement l’image pour voir si le message s’affiche.

  4. Si vous utilisez une gestion personnalisée des messages in-app via braze.subscribeToInAppMessage, vérifiez que le rappel ne bloque pas l’affichage. Consultez Personnalisation.

Résolution des problèmes d’affichage

Si votre application demande et reçoit des messages in-app mais qu’ils ne s’affichent pas, il se peut que la logique côté appareil empêche l’affichage :

  1. L’événement déclencheur se déclenche-t-il comme prévu ? Pour le vérifier, configurez le message pour qu’il se déclenche à l’aide d’une action différente (comme le démarrage d’une session) et vérifiez s’il s’affiche.

  2. Les messages in-app déclenchés sont soumis à une limitation de débit basée sur l’intervalle de temps minimum entre les déclenchements, qui est de 30 secondes par défaut.

  3. Les échecs de téléchargement d’images empêchent l’affichage des messages in-app contenant des images. Vérifiez les journaux de votre appareil pour détecter d’éventuels échecs de téléchargement. Essayez de supprimer temporairement l’image pour voir si le message s’affiche.

  4. Si vous avez défini un délégué pour personnaliser la gestion des messages in-app, vérifiez qu’il ne bloque pas l’affichage. Consultez Personnalisation.

  5. Si l’orientation de l’appareil ne correspond pas au paramètre du message in-app, celui-ci ne s’affichera pas.

  6. Selon les conditions réseau, les images peuvent être téléchargées avant l’affichage. Sur les connexions lentes ou les appareils peu performants, prévoyez un délai supplémentaire ou optimisez la taille des ressources.

Les impressions et les clics ne sont pas enregistrés

Si vous avez défini un délégué de message in-app pour gérer manuellement l’affichage du message ou les actions de clic, vous devez enregistrer manuellement les clics et les impressions sur le message in-app.

Résolution des problèmes d’affichage

Si votre application demande et reçoit des messages in-app mais qu’ils ne s’affichent pas, il se peut que la logique côté appareil empêche l’affichage :

  1. L’événement déclencheur se déclenche-t-il comme prévu ? Pour le vérifier, configurez le message pour qu’il se déclenche à l’aide d’une action différente (comme le démarrage d’une session) et vérifiez s’il s’affiche.

  2. Les messages in-app déclenchés sont soumis à une limitation de débit basée sur l’intervalle de temps minimum entre les déclenchements, qui est de 30 secondes par défaut.

  3. Les échecs de téléchargement d’images empêchent l’affichage des messages in-app contenant des images. Vérifiez les journaux de votre appareil pour détecter d’éventuels échecs de téléchargement. Essayez de supprimer temporairement l’image pour voir si le message s’affiche.

  4. Si vous avez défini un délégué pour personnaliser la gestion des messages in-app, vérifiez qu’il ne bloque pas l’affichage. Consultez Personnalisation.

  5. Si l’orientation de l’appareil ne correspond pas au paramètre du message in-app, celui-ci ne s’affichera pas.

  6. Selon les conditions réseau, les images peuvent être téléchargées avant l’affichage. Sur les connexions lentes ou les appareils peu performants, prévoyez un délai supplémentaire ou optimisez la taille des ressources.

Les impressions et les clics ne sont pas enregistrés

Si vous avez défini un délégué de message in-app pour gérer manuellement l’affichage du message ou les actions de clic, vous devez enregistrer manuellement les clics et les impressions sur le message in-app.

Résolution des problèmes de chargement des ressources (NSURLError code -1008)

Lors de l’intégration de Braze avec des bibliothèques tierces de journalisation réseau, les développeurs peuvent fréquemment rencontrer une NSURLError avec le code de domaine -1008. Cette erreur indique que des ressources telles que des images et des polices n’ont pas pu être récupérées ou que leur mise en cache a échoué. Pour contourner ces cas, vous devez enregistrer les URL du réseau de diffusion de contenu de Braze dans la liste des domaines à ignorer par ces bibliothèques.

Domaines

La liste complète des domaines du réseau de diffusion de contenu est indiquée ci-dessous :

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

Exemples

Vous trouverez ci-dessous les bibliothèques connues pour entrer en conflit avec la mise en cache des ressources de Braze, ainsi qu’un exemple de code permettant de contourner le problème. Si votre projet utilise une bibliothèque qui provoque une erreur de ressource indisponible et qui n’est pas répertoriée ci-dessous, consultez la documentation de cette bibliothèque pour des API d’utilisation similaires.

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!