Tester l’implémentation de l’Audience Network

Lorsque vous intégrez l’Audience Network de Facebook à votre app ou votre site web mobile, vous devez tester votre implémentation sur de vrais appareils avec de vraies publicités avant de lancer la phase de production. Assurez-vous d’utiliser les derniers SDK Audience Network dans votre intégration afin d’inclure les corrections de bug et les améliorations les plus récentes. Les sections suivantes vous donneront des conseils pour tester votre app et votre site web.

Lorsque vous utilisez un simulateur iOS ou Android, il est possible de voir les publicités tests en activant le mode test et en indiquant l’ID haché de l’appareil. Il s’agit là d’un bon premier pas pour tester votre implémentation. Nous vous recommandons également d’effectuer des tests sur de vrais appareils avec de vraies publicités en suivant les conseils ci-dessous.

1. Effectuer un test avec de vraies publicités

2. Codes d’erreur des vraies requêtes publicitaires

3. Effectuer un test avec des publicités test

Test des demandes avec l’outil de débogage des demandes Audience Network

Après avoir implémenté les placements dans votre app, vous pouvez utiliser l’outil de débogage des demandes Audience Network pour vérifier que Facebook reçoit les demandes de votre app.

Dans la section Audience Network de l’espace Développeurs : https://developers.facebook.com/apps/<your_app_id>/audience-network/

Accédez à la section Apps dans le volet de gauche sous Audience Network et faites défiler la page vers le bas jusqu’à Débogueur des demandes Audience Network. Cliquez sur le bouton Start afin que l’outil contrôle les demandes provenant de votre app.

Sur votre appareil de test iOS ou Android, parcourez l’application pour déclencher les placements publicitaires de l’Audience Network de manière à ce que les demandes publicitaires apparaissent dans l’outil. Assurez-vous que les demandes sont envoyées avec les informations adéquates (ID de placement, nom d’offre/de package, etc.).

Cette opération nécessite l’utilisation d’un appareil physique et ne fonctionnera pas avec le simulateur iOS ou l’émulateur Android.

Vous devez être connecté(e) à l’app Facebook à partir du même appareil de test que vous utilisez afin que l’outil puisse contrôler les demandes.

Si les demandes publicitaires n’apparaissent pas dans l’outil, cela signifie que Facebook ne reçoit pas les demandes comme prévu. Suivez les étapes suivantes pour tenter de résoudre le problème :

  1. Assurez-vous que vous utilisez un appareil physique et non un simulateur/émulateur.
  2. Assurez-vous que l’app Facebook est installée sur votre appareil de test.
  3. Sur votre appareil de test, assurez-vous que vous êtes connecté(e) à Facebook en tant qu’utilisateur avec un rôle d’administrateur, de développeur ou de testeur sur votre app Audience Network de Facebook.
  4. Si vous utilisez la médiation, vérifiez que la couche de médiation envoie les demandes à l’Audience Network de Facebook.

Effectuer un test avec de vraies publicités

Les tests réalisés avec de vraies publicités comportent deux étapes. La première étape consiste à ajouter des testeurs aux paramètres de votre app pour leur permettre de voir de vraies publicités avant que l’app ne soit approuvée. La deuxième étape implique que ces testeurs utilisent votre app ou votre site web mobile en étant connectés à Facebook. Voici des informations plus précises sur ces deux étapes.

Ajouter des testeurs à votre app

Vous pouvez tester votre app ou votre site web mobile sur de vrais appareils avec de vraies publicités en vous assurant qu’un rôle a été attribué au testeur dans votre app Facebook. Ceci est la méthode recommandée pour ajouter des testeurs à votre app :

  1. Accédez au tableau de bord de votre app et cliquez sur l’onglet Rôles à gauche de l’écran.
  2. Dans la section Testeurs, cliquez sur le bouton Ajouter des testeurs. Les utilisateurs peuvent aussi posséder les rôles d’administrateur ou de développeur. Nous recommandons le rôle Testeurs pour les utilisateurs qui ont besoin de tester l’app ou le site web, mais qui ne sont pas autorisés à voir ses paramètres sur Facebook.
  3. Entrez le nom, l’ID Facebook ou le nom d’utilisateur de la personne que vous souhaitez ajouter en tant que testeur, puis cliquez sur Envoyer. Vous pouvez entrer plusieurs personnes dans cet espace.
  4. Vous devriez maintenant voir les personnes que vous avez ajoutées comme Testeurs.

Si vous utilisez une couche de médiation, assurez-vous que celle-ci envoie des demandes à l’Audience Network. Si vous avez activé les tests sur la couche de médiation, il se peut qu’elle n’envoie aucune demande à nos serveurs.

Tester les apps mobiles

  1. Diffusez l’app aux appareils de vos testeurs en utilisant la méthode de diffusion que vous préférez.
  2. Chacun des testeurs que vous avez ajoutés doit avoir installé l’app Facebook sur son appareil et s’y connecter à l’aide de l’ID utilisateur Facebook que vous avez ajouté au rôle Testeurs. Ceci est obligatoire, car Facebook doit pouvoir identifier l’utilisateur comme étant un Testeur dans l’app afin d’afficher une publicité, quel que soit le statut de certification de l’app.
  3. Le testeur peut maintenant lancer votre app et suivre les étapes requises pour déclencher les placements que vous souhaitez tester. Il devrait voir une vraie publicité.

Lorsque vous testez vos placements publicitaires, Facebook envoie intentionnellement une réponse sans remplissage pour environ 20 % des demandes afin que vous puissiez tester la manière dont votre app ou votre site web mobile gère ces cas.

Codes d’erreur des vraies requêtes publicitaires

Lorsque vous testez votre implémentation de l’Audience Network de Facebook, il est possible que vous rencontriez un ou plusieurs codes d’erreur au moment d’introduire une demande. Ces codes d’erreur sont décrits ci-dessous.

1000 - Network Error

Réponse du serveur Documentation SDK

Code=1000 “Network Error"

  • Error 1000 - Network Error. Le SDK Audience Network n’a pas pu atteindre facebook.com (http://facebook.com/)
  • Votre application doit tenter de lancer une autre demande jusqu’à ce qu’elle puisse atteindre le réseau. Nous vous recommandons d’introduire des demandes incrémentielles jusqu’à ce qu’une connexion soit rétablie ou que vous indiquiez un délai d’expiration.

1001 - No Fill

Il s’agit d’une erreur courante observée lors des tests, qui correspond à une réponse « Aucun remplissage ». La cause la plus courante est que l’utilisateur n’est pas connecté à l’app Facebook lorsqu’il teste votre app mobile ou qu’il n’est pas connecté au site web mobile Facebook lorsqu’il teste votre site web mobile.

Réponse du serveur Documentation SDK

Code=1001 “No Fill”

  • Error 1001 - No Fill. Peut être due à une ou plusieurs conditions parmi les suivantes :
  • L’utilisateur n’est pas connecté à l’app native Facebook sur l’appareil mobile
  • Option Limiter le suivi publicitaire activée (iOS)
  • Option Désactiver les publicités basées sur les intérêts activée (Android)
  • Aucun inventaire publicitaire pour l’utilisateur actuel
  • L’application native Facebook doit être installée sur votre appareil de test.
  • Votre application doit tenter d’effectuer une autre demande après 30 secondes.

1002 - Ad Load Too Frequently

Réponse du serveur Documentation SDK

Code=1002 “Load Too Frequently”

  • Les requêtes publicitaires reposent sur une combinaison des éléments suivants :
  • ID d’appareil
  • ID de placement
  • Format d’affichage (bannière, publicité interstitielle, publicité native)
  • Votre application doit tenter de lancer une autre demande après 30 minutes. Nous vous conseillons également d’ajuster votre fréquence d’actualisation ou votre taux de requêtes.

1203 - Not An App Admin, Developer or Tester

Réponse du serveur Documentation SDK

Code=1203 “Not An App Admin, Developer or Tester”

  • La demande initiale d’une offre doit provenir d’un administrateur d’application, d’un développeur ou d’un testeur.

2000 - Server Error

Réponse du serveur Documentation SDK

Code=2000 “Server Error"

  • Error 2000 - Server Error. Peut être due aux conditions suivantes :
  • ID de placement invalide ; chaque placement et type possède un ID unique
  • Version du SDK non prise en charge ou obsolète ; veuillez télécharger la dernière version ou mettre à jour votre Pod si vous utilisez CocoaPods
  • Appel/usage incorrect de la méthode loadAd. Nous vous suggérerons de placer des points d’arrêt sur loadAd et toutes les méthodes ou tous les renvois associés
  • Votre application doit tenter d’effectuer une autre demande après 30 secondes.

2001 - Internal Error

Réponse du serveur Documentation SDK

Code=2001 “Internal Error”

  • Error 2001 - Internal Error. Le SDK Audience Network n’a pas pu traiter une réponse depuis facebook.com
  • Votre application doit tenter d’effectuer une autre demande après 30 secondes.
  • Si ce problème se reproduit systématiquement, veuillez remplir un rapport de bug et nous le faire parvenir.

Effectuer un test avec des publicités test

Vous devez vous assurer qu’un rôle a été attribué au testeur de votre app dans le tableau de bord de votre app sur Facebook. Ceci est la méthode de test recommandée, car elle vous permet de voir de vraies publicités sur de vrais appareils. Pour plus d’informations sur la méthode de test recommandée, consultez la section Effectuer un test avec de vraies publicités.

Cependant, tel que mentionné dans la section précédente, vous vous êtes sans doute rendu compte qu’il n’est pas toujours possible de vérifier l’affichage des vraies publicités à l’aide de l’interface de votre app. De plus, vous ne pouvez être sûr que la publicité reçue par votre app sera une publicité image, une publicité vidéo ou une publicité carrousel. La demande de vraies publicités ne garantira pas le contenu et le format de la publicité renvoyée. Et si vous souhaitez effectuer un test avec une publicité qui comprend une vidéo en mode portrait pour vous assurer qu’elle apparaît correctement sur l’interface de votre app ?

Pour demander une publicité test, vous utiliserez la chaîne de type de publicité test suivante pour concaténer l’ID de placement avec '#' lors de l’initialisation de tout objet publicitaire Facebook. Le modèle d’ID de placement pour demander des publicités test est TEST_AD_TYPE#YOUR_PLACEMENT_ID.

Tableau des types de publicités test

Type de publicité test Description Format publicitaire pris en charge

IMG_16_9_APP_INSTALL

Publicité image au format 16 x 9 avec option d’appel à l’action pour l’installation d’application.

Bannière, publicité interstitielle, publicité native

IMG_16_9_LINK

Publicité image au format 16 x 9 avec option d’appel à l’action avec lien.

Bannière, publicité interstitielle, publicité native

VID_HD_16_9_46S_APP_INSTALL

Publicité vidéo HD d’une durée de 46 secondes au format 16 x 9 avec option d’appel à l’action pour l’installation d’application.

Publicité interstitielle, publicité native

VID_HD_16_9_46S_LINK

Publicité vidéo HD d’une durée de 46 secondes au format 16 x 9 avec l’option appel à l’action avec lien.

Publicité interstitielle, publicité native

VID_HD_16_9_15S_APP_INSTALL

Publicité vidéo HD d’une durée de 15 secondes au format 16 x 9 avec option d’appel à l’action pour l’installation d’application.

Publicité interstitielle, publicité native

VID_HD_16_9_15S_LINK

Publicité vidéo HD d’une durée de 15 secondes au format 16 x 9 avec l’option appel à l’action avec lien.

Publicité interstitielle, publicité native

VID_HD_9_16_39S_APP_INSTALL

Publicité vidéo HD d’une durée de 39 secondes au format 9 x 16 avec option d’appel à l’action pour l’installation d’application.

Publicité interstitielle, publicité native

VID_HD_9_16_39S_LINK

Publicité vidéo HD d’une durée de 39 secondes au format 9 x 16 avec l’option appel à l’action avec lien.

Publicité interstitielle, publicité native

CAROUSEL_IMG_SQUARE_APP_INSTALL

publicité carrousel avec image carrée et option d’appel à l’action pour l’installation d’application

Publicité interstitielle, publicité native

CAROUSEL_IMG_SQUARE_LINK

publicité carrousel avec image carrée et option d’appel à l’action avec lien

Publicité interstitielle, publicité native

Exemple pour demander des publicités test dans le code sur les appareils iOS

Si vous utilisez Testflight pour distribuer et tester votre application, vous ne pourrez pas voir de vraies publicités dans ces versions test. À la place, vous devrez régler le mode test tel qu’indiqué ci-dessous afin d’obtenir des publicités de l’Audience Network. À chaque fois qu’une application distribuée par Testflight demandera l’identifiant publicitaire des annonceurs (IDFA), elle obtiendra un IDFA différent. D’habitude, l’IDFA reste le même pour un appareil jusqu’à ce que l’utilisateur le réinitialise manuellement. Mais lorsqu’une version Testflight demande l’IDFA du système d’exploitation, elle n’obtient pas le véritable IDFA. À la place, elle obtient un IDFA factice qui change à chaque fois que l’application le demande.

Pour résoudre ce problème, vous pouvez activer le mode test pour que la publicité test s’affiche.

Par exemple, pour demander une publicité test vidéo au format 9:16 avec un bouton d’appel à l’action Installer l’application dans votre app iOS, vous devez initialiser un objet FBNativeAd en ajoutant la ligne de code suivante :

[FBNativeAd *nativeAd = [[FBNativeAd alloc] initWithPlacementID:@"VID_HD_9_16_39S_APP_INSTALL#YOUR_PLACEMENT_ID"];

Vous pouvez exécuter le code ci-dessus pour demander une publicité test dans le projet NativeAdSample, disponible dans le dossier d’exemples du SDK Audience Network.

Si vous devez demander des publicités test avec un format de contenu aléatoire, vous pouvez ajouter la ligne de code suivante avant de charger la demande de publicité :

#ifdef DEBUG
[FBAdSettings setLogLevel:FBAdLogLevelLog];
[FBAdSettings addTestDevice:@"HASHED_ID"];
#endif

Vous verrez ensuite le message de journal suivant :

[FBAudienceNetworkLog/FBAdSettings:94] 
When testing your app with Facebook ad units,  
you must specify the device hashed ID to ensure the delivery of test ads, 
add the following code before loading an ad: `[FBAdSettings addTestDevice:@"HASHED_ID"]`
Test mode device hash: bd675f960298a92003630d76fa612b1706b745ab

Remplacez HASHED_ID par le hachage de l’appareil en mode Test indiqué dans le journal ci-dessus.

Vous ne devez jamais expédier votre app au grand public avec le code de test ci-dessus, car il n’affichera que les publicités test. Vous devez plutôt utiliser une macro de préprocesseur telle que DEBUG ou TESTING, puis utiliser #ifdef pour différencier une version test d’une version de lancement.

Après avoir effectué les tests, vous devez effacer les paramètres de l’appareil de test en utilisant la ligne de code suivante :

[FBAdSettings clearTestDevice:[FBAdSettings testDeviceHash]]; 

Exemple pour demander des publicités test dans le code sur les appareils Android

Pour demander une publicité test vidéo au format 9:16 avec un bouton d’appel à l’action Installer l’application dans votre app Android, vous devez initialiser un objet NativeAd en ajoutant la ligne de code suivante :

nativeAd = new NativeAd(this, "VID_HD_9_16_39S_APP_INSTALL#YOUR_PLACEMENT_ID");

Si vous devez demander des publicités test avec un format de contenu aléatoire, vous verrez un message comme celui-ci affiché dans le logcat lors du test sur un véritable appareil Android :

Journal : Hachage de l’appareil en mode test : HASHED_ID Journal : Lorsque vous testez votre app avec des unités publicitaires Facebook, vous devez indiquer l’ID haché de l’appareil pour garantir la diffusion des publicités test et ajouter le code suivant avant de charger une publicité : AdSettings.addTestDevice("HASHED ID");

Vous pouvez activer les publicités test sur un appareil en ajoutant la ligne de code suivante avant de charger une publicité :

AdSettings.addTestDevice("HASHED ID");

Si vous souhaitez ajouter plusieurs appareils test, il vous suffit de créer une liste de chaînes à ajouter avant de charger une publicité :

List<String> testDevices = new ArrayList<>();
testDevices.add("HASHED_ID_1");
testDevices.add("HASHED_ID_2");
AdSettings.addTestDevices(testDevices);

Après avoir effectué les tests, vous devez effacer les paramètres de l’appareil de test en utilisant la ligne de code suivante :

AdSettings.clearTestDevices();

Exemple pour demander des publicités test dans le tableau de bord de médiation

Outre la possibilité de demander la publicité test à partir du code, vous pouvez configurer la valeur de l’ID de placement avec le type de publicité test depuis votre tableau de bord de médiation si votre app utilise la médiation. Si, par exemple, votre application utilise MoPub, vous pouvez modifier le réseau Facebook et définir sur VID_HD_9_16_39S_APP_INSTALL#YOUR_PLACEMENT_ID la valeur de l’ID de placement pour la publicité native. Votre app recevra une publicité test vidéo au format 9:16 avec un bouton d’appel à l’action Installer l’application.