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

Pour le débogage et la journalisation, les annonces chargées avec succès fournissent un objet ResponseInfo. Cet objet contient des informations sur l'annonce qu'il a chargée, ainsi que sur la cascade de médiation utilisée pour charger l'annonce.

Dans les cas où une annonce est chargée avec succès, l'objet d'annonce comporte une méthode getResponseInfo(). Par exemple,InterstitialAd.getResponseInfo()obtient les informations de réponse pour une annonce interstitielle chargée.

Dans les cas où les annonces ne se chargent pas et où seule une erreur est disponible, les informations sur la réponse sont disponibles via LoadAdError.getResponseInfo().

Kotlin

override fun onAdLoaded(interstitialAd: InterstitialAd)) {
  val responseInfo = interstitialAd.responseInfo
  Log.d(TAG, responseInfo.toString())
}

override fun onAdFailedToLoad(adError: LoadAdError) {
  val responseInfo = adError.responseInfo
  Log.d(TAG, responseInfo.toString())
}

Java

@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
  ResponseInfo responseInfo = interstitialAd.getResponseInfo();
  Log.d(TAG, responseInfo.toString());
}

@Override
public void onAdFailedToLoad(LoadAdError loadAdError) {
  ResponseInfo responseInfo = loadAdError.getResponseInfo();
  Log.d(TAG, responseInfo.toString());
}

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 :

{
  "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"
  }
}

L'objet ResponseInfo inclut les méthodes suivantes :

Méthode Description
getAdSourceResponses Renvoie la liste des AdSourceResponseInfo contenant les métadonnées de chaque source d'annonces incluse dans la réponse publicitaire. Permet de déboguer l'exécution de la médiation en cascade et 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 la réponse de la source d'annonces.

getLoadedAdSourceResponse Renvoie le AdSourceResponseInfo correspondant à la source d'annonce qui a chargé l'annonce.
getAdapterClassName Renvoie le nom de classe de l'adaptateur de médiation de la source d'annonce qui a chargé l'annonce.
getResponseId L'identifiant de réponse est un identifiant unique pour 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 Renvoie des informations supplémentaires sur la réponse de l'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

Kotlin

override fun onAdLoaded(interstitialAd: InterstitialAd) {
  val responseInfo = interstitialAd.responseInfo

  val responseId = responseInfo.responseId
  val adapterClassName = responseInfo.adapterClassName
  val adSourceResponses = responseInfo.adSourceResponses
  val loadedAdSourceResponse = responseInfo.loadedAdSourceResponse
  val extras = responseInfo.responseExtras
  val mediationGroupName = extras.getString("mediation_group_name")
  val mediationABTestName = extras.getString("mediation_ab_test_name")
  val mediationABTestVariant = extras.getString("mediation_ab_test_variant")
}

Java

@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
  MyActivity.this.interstitialAd = interstitialAd;

  ResponseInfo responseInfo = interstitialAd.getResponseInfo();
  String responseId = responseInfo.getResponseId();
  String adapterClassName = responseInfo.getAdapterClassName();
  List<AdSourceResponseInfo> adSourceResponses = responseInfo.getAdSourceResponses();
  AdSourceResponseInfo loadedAdSourceResponse = responseInfo.getLoadedAdSourceResponse();
  Bundle extras = responseInfo.getResponseExtras();
  String mediationGroupName = extras.getString("mediation_group_name");
  String mediationABTestName = extras.getString("mediation_ab_test_name");
  String mediationABTestVariant = extras.getString("mediation_ab_test_variant");
}

Informations sur la réponse de la source d'annonces

AdSourceResponseInfo contient des informations de réponse pour une source d'annonce individuelle dans une réponse d'annonce.

L'exemple de résultat AdSourceResponseInfo suivant montre les métadonnées d'une annonce chargée :

{
  "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"
}

Pour chaque source d'annonces, AdSourceResponseInfo fournit les méthodes suivantes :

Méthode Description
getAdError Obtient l'erreur associée à la demande envoyée à la source d'annonces. Renvoie null si la source d'annonces a chargé une annonce ou si la source d'annonces n'a pas été tentée.
getId Obtient l'ID de source d'annonce associé à cette réponse de source d'annonce. Pour les campagnes, 6060308706800320801 est renvoyé pour un type d'objectif de campagne d'annonces par médiation, et 7068401028668408324 est renvoyé pour les types d'objectifs d'impression et de clic. Consultez Sources d'annonces pour obtenir la liste des ID de sources d'annonces possibles lorsqu'une source d'annonce diffuse l'annonce.
getInstanceId Obtient l'ID d'instance de la source d'annonces associée à cette réponse de l'adaptateur.
getInstanceName Obtient le nom de l'instance de source d'annonce associée à cette réponse de l'adaptateur.
getName Obtient le nom de la source d'annonce associée à cette réponse de l'adaptateur. Pour les campagnes, Mediated House Ads est renvoyé pour un type d'objectif de campagne d'annonces par médiation, et Reservation Campaign est renvoyé pour les types d'objectifs d'impression et de clic. Consultez Sources d'annonces pour obtenir la liste des noms de sources d'annonces possibles lorsqu'une source d'annonce diffuse l'annonce.
getAdapterClassName Récupère le nom de classe de l'adaptateur de source d'annonce qui a chargé l'annonce.
getCredentials Récupère les identifiants de l'adaptateur de source d'annonces spécifiés dans l'UI AdMob.
getLatencyMillis Obtient le temps passé par l'adaptateur de source d'annonce à charger une annonce. Renvoie 0 si la source d'annonces n'a pas été tentée.

Kotlin

override fun onAdLoaded(interstitialAd: InterstitialAds) {
  val loadedAdSourceResponseInfo = interstitialAd.responseInfo.loadedAdSourceResponse

  val adError = loadedAdSourceResponseInfo.adError
  val adSourceId = loadedAdSourceResponseInfo.id
  val adSourceInstanceId = loadedAdSourceResponseInfo.instanceId
  val adSourceInstanceName = loadedAdSourceResponseInfo.instanceName
  val adSourceName = loadedAdSourceResponseInfo.name
  val adapterClassName = loadedAdSourceResponseInfo.adapterClassName
  val credentials = loadedAdSourceResponseInfo.credentials
  val latencyMillis = loadedAdSourceResponseInfo.latencyMillis
}

Java

@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
  AdSourceResponseInfo loadedAdSourceResponseInfo =
      interstitialAd.getResponseInfo().getLoadedAdSourceResponse();

  AdError adError = loadedAdSourceResponseInfo.getAdError();
  String adSourceId = loadedAdSourceResponseInfo.getId();
  String adSourceInstanceId = loadedAdSourceResponseInfo.getInstanceId();
  String adSourceInstanceName = loadedAdSourceResponseInfo.getInstanceName();
  String adSourceName = loadedAdSourceResponseInfo.getName();
  String adapterClassName = loadedAdSourceResponseInfo.getAdapterClassName();
  Bundle credentials = loadedAdSourceResponseInfo.getCredentials();
  long latencyMillis = loadedAdSourceResponseInfo.getLatencyMillis();
}