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 les annonces ne se chargent pas et qu'une seule erreur est disponible, les informations de réponse sont disponibles via LoadAdError.getResponseInfo().

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());
}

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())
}

Informations sur la réponse

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

{
  "Response ID": "NI3BZZDbGdyQtOUP4o21gAM",
  "Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter",
  "Adapter Responses": [
    {
      "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
      "Latency": 3585,
      "Ad Source Name": "AdMob Network",
      "Ad Source ID": "",
      "Ad Source Instance Name": "AdMob (default)",
      "Ad Source Instance ID": "",
      "Credentials": {
        "pubid": "ca-pub-9939518381636264//21775744923/example/rewarded_interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
      },
      "Ad Error": "null"
    }
  ],
  "Loaded Adapter Response": {
    "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
    "Latency": 3585,
    "Ad Source Name": "AdMob Network",
    "Ad Source ID": "",
    "Ad Source Instance Name": "AdMob (default)",
    "Ad Source Instance ID": "",
    "Credentials": {
      "pubid": "ca-pub-9939518381636264//21775744923/example/rewarded_interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
    },
    "Ad Error": "null"
  },
  "Response Extras": {}
}

Les méthodes de l'objet ResponseInfo incluent:

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.

Java

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

  ResponseInfo responseInfo = interstitialAd.getResponseInfo();
  String responseId = responseInfo.getResponseId();
  String mediationAdapterClassName = responseInfo.getMediationAdapterClassName();
  List<AdapterResponseInfo> adapterResponses = responseInfo.getAdapterResponses();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo();
}

Kotlin

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

  val responseId = responseInfo.responseId
  val mediationAdapterClassName = responseInfo.mediationAdapterClassName
  val adapterResponses = responseInfo.adapterResponses
  val loadedAdapterResponseInfo = responseInfo.loadedAdapterResponseInfo
}

Informations sur la 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 sortie AdapterResponseInfo:

{
  "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
  "Latency": 3585,
  "Ad Source Name": "AdMob Network",
  "Ad Source ID": "",
  "Ad Source Instance Name": "AdMob (default)",
  "Ad Source Instance ID": "",
  "Credentials": {
    "pubid": "ca-pub-9939518381636264//21775744923/example/rewarded_interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
  },
  "Ad Error": "null"
}

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

Méthode Description
getAdError Récupère l'erreur associée à la requête adressée au réseau. Renvoie null si le réseau a correctement chargé une annonce ou si le réseau n'a pas fait l'objet d'une tentative.
getAdSourceId Récupère l'ID de source d'annonces associé à cette réponse d'adaptateur.
getAdSourceInstanceId Récupère l'ID d'instance de source d'annonces associé à la réponse de cet adaptateur. Renvoie une chaîne vide si aucun groupe de rendement n'est renseigné.
getAdSourceInstanceName Récupère le nom d'instance de source d'annonces associée à cette réponse d'adaptateur.
getAdSourceName Récupère la source d'annonces représentant le réseau publicitaire spécifique qui diffuse l'impression.
getAdapterClassName Récupère le nom de classe de l'adaptateur qui a chargé l'annonce.
getCredentials Récupère la configuration réseau définie à partir de l'interface utilisateur Ad Manager .
getLatencyMillis 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.

Java

@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
  AdapterResponseInfo loadedAdapterResponseInfo =
      interstitialAd.getResponseInfo().getLoadedAdapterResponseInfo();

  AdError adError = loadedAdapterResponseInfo.getAdError();
  String adSourceId = loadedAdapterResponseInfo.getAdSourceId();
  String adSourceInstanceId = loadedAdapterResponseInfo.getAdSourceInstanceId();
  String adSourceInstanceName = loadedAdapterResponseInfo.getAdSourceInstanceName();
  String adSourceName = loadedAdapterResponseInfo.getAdSourceName();
  String adapterClassName = loadedAdapterResponseInfo.getAdapterClassName();
  Bundle credentials = loadedAdapterResponseInfo.getCredentials();
  long latencyMillis = loadedAdapterResponseInfo.getLatencyMillis();
}

Kotlin

override fun onAdLoaded(interstitialAd: InterstitialAds) {
  val loadedAdapterResponseInfo = interstitialAd.responseInfo.loadedAdapterResponse

  val adError = loadedAdapterResponseInfo.adError
  val adSourceId = loadedAdapterResponseInfo.adSourceId
  val adSourceInstanceId = loadedAdapterResponseInfo.adSourceInstanceId
  val adSourceInstanceName = loadedAdapterResponseInfo.adSourceInstanceName
  val adSourceName = loadedAdapterResponseInfo.adSourceName
  val adapterClassName = loadedAdapterResponseInfo.adapterClassName
  val credentials = loadedAdapterResponseInfo.credentials
  val latencyMillis = loadedAdapterResponseInfo.latencyMillis
}