Récupérer des informations sur la réponse d'annonce

À des fins de débogage et de journalisation, les annonces chargées correctement fournissent un objet ResponseInfo. Cet objet contient des informations sur l'annonce qu'il a chargée, en plus des informations sur la cascade de médiation utilisée pour charger l'annonce.

Dans les cas où une annonce se charge correctement, l'objet d'annonce dispose d'une méthode GetResponseInfo(). Par exemple, InterstitialAd.GetResponseInfo() obtient les informations de réponse pour une annonce interstitielle chargée.

Si le chargement des annonces échoue et qu'une erreur seule est disponible, les informations sur la réponse sont disponibles via AdFailedToLoadEventArgs.LoadAdError.GetResponseInfo().

InterstitialAd ad;

private void RequestInterstitial()
{
    ad = new InterstitialAd("AD_UNIT_ID");
    this.interstitial.OnAdLoaded += OnAdLoaded;
    this.interstitial.OnAdFailedToLoad += HandleOnAdFailedToLoad;
    AdRequest request = new AdRequest.Builder().Build();
    this.interstitial.LoadAd(request);
}

private void OnAdLoaded(object sender, EventArgs args)
{
    ResponseInfo info = ad.GetResponseInfo();
}

private void OnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
    ResponseInfo info = args.LoadAdError.GetResponseInfo();
}

Informations sur la réponse

Voici un exemple de résultat renvoyé par ResponseInfo.ToString() montrant les données de débogage renvoyées pour une annonce chargée:

Android

{
  "Response ID": "COOllLGxlPoCFdAx4Aod-Q4A0g",
  "Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter",
  "Adapter Responses": [
    {
      "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
      "Latency": 328,
      "Ad Source Name": "Reservation campaign",
      "Ad Source ID": "7068401028668408324",
      "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
      "Ad Source Instance ID": "4665218928925097",
      "Credentials": {},
      "Ad Error": "null"
    }
  ],
  "Loaded Adapter Response": {
    "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
    "Latency": 328,
    "Ad Source Name": "Reservation campaign",
    "Ad Source ID": "7068401028668408324",
    "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
    "Ad Source Instance ID": "4665218928925097",
    "Credentials": {},
    "Ad Error": "null"
  },
  "Response Extras": {
    "mediation_group_name": "Campaign"
  }
}

iOS

 ** Response Info **
    Response ID: CIzs0ZO5kPoCFRqWAAAdJMINpQ
    Network: GADMAdapterGoogleAdMobAds

  ** Loaded Adapter Response **
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name: Reservation campaign
    Ad Source ID: 7068401028668408324
    Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
    {
    }
    Error: (null)
    Latency: 0.391

  ** Extras Dictionary **
    {
        "mediation_group_name" = Campaign;
    }

  ** Mediation line items **
    Entry (1)
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name: Reservation campaign
    Ad Source ID:7068401028668408324
    Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
    {
    }
    Error: (null)
    Latency: 0.391

Les méthodes suivantes sur l'objet ResponseInfo sont les suivantes:

Méthode Description
GetAdapterResponses Renvoie la liste d'AdapterResponseInfo contenant les métadonnées pour chaque adaptateur inclus dans la réponse d'annonce. Permet de déboguer la médiation en cascade et l'exécution des enchères. L'ordre de la liste correspond à celui de la cascade de médiation pour cette demande d'annonce.

Pour en savoir plus, consultez Informations sur les réponses de l'adaptateur.

GetLoadedAdapterResponseInfo Renvoie l'élément AdapterResponseInfo correspondant à l'adaptateur qui a chargé l'annonce.
GetMediationAdapterClassName Renvoie le nom de classe de l'adaptateur de médiation du réseau publicitaire qui a chargé l'annonce.
GetResponseId L'identifiant de réponse est un identifiant unique associé à la réponse d'annonce. Cet identifiant peut être utilisé pour identifier et bloquer l'annonce dans le Centre de vérification des annonces.
GetResponseExtras Affiche des informations supplémentaires sur la réponse d'annonce. Les extras peuvent renvoyer les clés suivantes :
  • mediation_group_name: nom du groupe de médiation
  • mediation_ab_test_name: nom du test A/B de médiation, le cas échéant.
  • mediation_ab_test_variant: variante utilisée dans le test A/B de médiation, le cas échéant

Voici un exemple de valeurs de lecture à partir d'un élément ResponseInfo chargé:

private void OnAdLoaded(object sender, EventArgs args)
{
  ResponseInfo info = ad.GetResponseInfo();

  string responseId = responseInfo.GetResponseId();
  string mediationAdapterClassName = responseInfo.GetMediationAdapterClassName();
  List<AdapterResponseInfo> adapterResponses = responseInfo.GetAdapterResponses();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
  Dictionary<string, string> extras = responseInfo.GetResponseExtras();
  string mediationGroupName = extras["mediation_group_name"];
  string mediationABTestName = extras["mediation_ab_test_name"];
  string mediationABTestVariant = extras["mediation_ab_test_variant"];
}

Informations de réponse de l'adaptateur

AdapterResponseInfo contient des métadonnées pour chaque adaptateur inclus dans la réponse d'annonce, qui peuvent être utilisées pour déboguer la médiation en cascade et l'exécution des enchères. L'ordre de la liste correspond à celui de la cascade de médiation pour la demande d'annonce.

Voici un exemple de résultat renvoyé par AdapterResponseInfo:

Android

{
  "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
  "Latency": 328,
  "Ad Source Name": "Reservation campaign",
  "Ad Source ID": "7068401028668408324",
  "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
  "Ad Source Instance ID": "4665218928925097",
  "Credentials": {},
  "Ad Error": "null"
}

iOS

  Network: GADMAdapterGoogleAdMobAds
  Ad Source Name: Reservation campaign
  Ad Source ID: 7068401028668408324
  Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
  Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
  AdUnitMapping:
  {
  }
  Error: (null)
  Latency: 0.391

Pour chaque réseau publicitaire, AdapterResponseInfo fournit les méthodes suivantes:

Méthode Description
AdError Récupère l'erreur associée à la requête adressée au réseau. Renvoie null si le réseau a chargé une annonce avec succès ou si aucune tentative n'a été effectuée.
AdSourceId Récupère l'ID de source d'annonces associé à cette réponse d'adaptateur. Pour les campagnes, 6060308706800320801 est renvoyé pour le type d'objectif de campagne des annonces par médiation, tandis que 7068401028668408324 est renvoyé pour les types d'objectifs d'impressions et de clics. Consultez la section Sources d'annonces pour obtenir la liste des ID de sources d'annonces possibles lorsqu'un réseau publicitaire diffuse l'annonce.
AdSourceInstanceId Récupère l'ID d'instance de source d'annonces associé à cette réponse d'adaptateur.
AdSourceInstanceName Récupère le nom d'instance de source d'annonces associée à cette réponse d'adaptateur.
AdSourceName Récupère la source d'annonce représentant le réseau publicitaire spécifique qui diffuse l'impression. Pour les campagnes, Mediated House Ads est renvoyé pour le type d'objectif de campagne des annonces par médiation, tandis que Reservation Campaign est renvoyé pour les types d'objectifs d'impressions et de clics. Consultez la section Sources d'annonces pour obtenir la liste des noms de sources d'annonces possibles lorsqu'un réseau publicitaire diffuse l'annonce.
AdapterClassName Récupère un nom de classe qui identifie la régie publicitaire.
AdUnitMapping Récupère la configuration réseau définie à partir de l'interface utilisateur AdMob.
LatencyMillis Récupère le temps que le réseau publicitaire a passé à charger une annonce. Renvoie 0 si aucune tentative de connexion au réseau n'a été effectuée.

Voici un exemple de valeurs de lecture à partir d'un élément AdapterResponseInfo chargé:

private void OnAdLoaded(object sender, EventArgs args)
{
  ResponseInfo responseInfo = ad.GetResponseInfo();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo();

  AdError adError = loadedAdapterResponseInfo.AdError;
  string adSourceId = loadedAdapterResponseInfo.AdSourceId;
  string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
  string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
  string adSourceName = loadedAdapterResponseInfo.AdSourceName;
  string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
  Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;
  long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
}