Informationen zur Anzeigenantwort abrufen

Zu Debugging- und Logging-Zwecken wird für erfolgreich geladene Anzeigen ein ResponseInfo-Objekt bereitgestellt. Dieses Objekt enthält Informationen zur geladenen Anzeige sowie zur Vermittlungsabfolge, die zum Laden der Anzeige verwendet wurde.

Wenn eine Anzeige erfolgreich geladen wurde, hat das Anzeigenobjekt eine getResponseInfo()-Methode. Beispiel: InterstitialAd.getResponseInfo() Mit diesem Code werden die Antwortinformationen für eine geladene Interstitial-Anzeige abgerufen.

Wenn Anzeigen nicht geladen werden und nur ein Fehler verfügbar ist, können Sie die Antwortinformationen über LoadAdError.getResponseInfo() abrufen.

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

Informationen zur Antwort

Hier sehen Sie eine Beispielausgabe von ResponseInfo.toString() mit den Debugging-Daten, die für eine geladene Anzeige zurückgegeben werden:

{
  "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-app-pub-3940256099942544\/9257395921\/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
    },
    "Ad Error": "null"
  },
  "Response Extras": {
    "creative_id": "138471856178",
    "line_item_id": "6707237225",
  }
}

Zu den Methoden für das ResponseInfo-Objekt gehören:

Methode Beschreibung
getAdSourceResponses Gibt die Liste der AdSourceResponseInfo-Objekte mit Metadaten für jede Anzeigenquelle zurück, die in der Anzeigenantwort enthalten ist. Kann zur Fehlerbehebung bei der abfolgebasierten Vermittlung und der Gebotsausführung verwendet werden. Die Reihenfolge der Liste entspricht der Reihenfolge der Vermittlungsabfolge für diese Anzeigenanfrage.

Weitere Informationen finden Sie unter Informationen zur Antwort der Anzeigenquelle.

getLoadedAdSourceResponse Gibt den AdSourceResponseInfo zurück, der der Anzeigenquelle entspricht, die die Anzeige geladen hat.
getAdapterClassName Gibt den Klassennamen des Vermittlungsadapters der Anzeigenquelle zurück, über die die Anzeige geladen wurde.
getResponseId Die Antwortkennung ist eine eindeutige Kennung für die Anzeigenantwort. Diese ID kann verwendet werden, um die Anzeige im Überprüfungszentrum für Anzeigen zu finden und zu blockieren.
getResponseExtras Gibt zusätzliche Informationen zur Anzeigenantwort zurück. Extras können die folgenden Schlüssel zurückgeben:
  • creative_id: Die Creative-ID der ausgewählten Anzeige. Wird nur für Reservierungsanzeigen zurückgegeben.
  • line_item_id: Die Werbebuchungs-ID der ausgewählten Anzeige. Wird nur für Reservierungsanzeigen zurückgegeben.

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 creativeId = extras.getString("creative_id")
  val lineItemId = extras.getString("line_item_id")
}

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 creativeId = extras.getString("creative_id");
  String lineItemId = extras.getString("line_item_id");
}

Informationen zur Antwort der Anzeigenquelle

AdSourceResponseInfo enthält Antwortinformationen für eine einzelne Anzeigenquelle in einer Anzeigenantwort.

Die folgende AdSourceResponseInfo-Beispielausgabe zeigt die Metadaten für eine geladene Anzeige:

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

Für jede Anzeigenquelle bietet AdSourceResponseInfo die folgenden Methoden:

Methode Beschreibung
getAdError Ruft den Fehler ab, der mit der Anfrage an die Anzeigenquelle verknüpft ist. Gibt null zurück, wenn die Anzeigenquelle eine Anzeige geladen hat oder wenn die Anzeigenquelle nicht verwendet wurde.
getId Ruft die Anzeigenquellen-ID ab, die mit dieser Anzeigenquellenantwort verknüpft ist.
getInstanceId Ruft die ID der Anzeigenquelleninstanz ab, die mit dieser Adapterantwort verknüpft ist.
getInstanceName Ruft den Namen der Anzeigenquelleninstanz ab, die dieser Adapterantwort zugeordnet ist.
getName Ruft den Namen der Anzeigenquelle ab, die mit dieser Adapterantwort verknüpft ist.
getAdapterClassName Ruft den Klassennamen des Anzeigenquellenadapters ab, der die Anzeige geladen hat.
getCredentials Ruft die Anmeldedaten für den Anzeigenquellenadapter ab, die in der Ad Manager-Benutzeroberfläche angegeben sind.
getLatencyMillis Ruft die Zeit ab, die der Adapter der Anzeigenquelle zum Laden einer Anzeige benötigt hat. Gibt 0 zurück, wenn die Anzeigenquelle nicht verwendet wurde.

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