Mengambil Informasi tentang Respons Iklan

Untuk tujuan proses debug dan logging, iklan yang berhasil dimuat memberikan ResponseInfo . Objek ini berisi informasi tentang iklan yang dimuatnya, selain informasi tentang waterfall mediasi yang digunakan untuk memuat iklan.

Untuk kasus saat iklan berhasil dimuat, objek iklan memiliki Metode getResponseInfo(). Misalnya, InterstitialAd.getResponseInfo() mendapatkan info respons iklan interstisial yang dimuat.

Untuk kasus saat iklan gagal dimuat dan hanya tersedia error, info respons tersedia melalui 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())
}

Info Respons

Berikut contoh output yang ditampilkan oleh ResponseInfo.toString() menunjukkan data proses debug yang ditampilkan untuk iklan yang dimuat:

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

Metode pada objek ResponseInfo meliputi:

Metode Deskripsi
getAdapterResponses Menampilkan daftar AdapterResponseInfo yang berisi metadata untuk setiap adaptor yang disertakan dalam respons iklan. Bisa digunakan untuk men-debug mediasi waterfall dan eksekusi bidding. Urutan dari daftar cocok dengan urutan waterfall mediasi untuk permintaan iklan ini.

Lihat Info Respons Adaptor untuk informasi selengkapnya tidak akurat atau tidak sesuai.

getLoadedAdapterResponseInfo Menampilkan AdapterResponseInfo yang sesuai dengan adaptor yang memuat iklan.
getMediationAdapterClassName Menampilkan nama kelas adaptor mediasi dari jaringan iklan yang dimuat iklan.
getResponseId ID respons adalah ID unik untuk respons iklan. Ini dapat digunakan untuk mengidentifikasi dan memblokir iklan di Pusat Peninjauan Iklan (ARC).
getResponseExtras

Menampilkan informasi tambahan tentang respons iklan.

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&ltAdapterResponseInfo> 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
}

Info Respons Adaptor

AdapterResponseInfo berisi metadata untuk setiap adaptor yang disertakan dalam respons iklan yang dapat digunakan untuk men-debug eksekusi bidding dan mediasi waterfall. Urutan daftar sesuai dengan urutan waterfall mediasi untuk permintaan iklan.

Berikut adalah contoh output 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"
}

Untuk setiap jaringan iklan, AdapterResponseInfo menyediakan metode berikut:

Metode Deskripsi
getAdError Mendapatkan error yang terkait dengan permintaan ke jaringan. Hasil null jika jaringan berhasil memuat iklan atau jika jaringan tidak dicoba.
getAdSourceId Mendapatkan ID sumber iklan yang terkait dengan respons adaptor ini.
getAdSourceInstanceId Mendapatkan ID instance sumber iklan yang terkait dengan adaptor ini respons. Menampilkan string kosong jika tidak diisi oleh grup hasil.
getAdSourceInstanceName Mendapatkan nama instance sumber iklan yang terkait dengan adaptor ini yang dihasilkan.
getAdSourceName Mendapatkan sumber iklan yang mewakili jaringan iklan tertentu yang menayangkan iklan tayangan iklan.
getAdapterClassName Mendapatkan nama class adaptor yang memuat iklan.
getCredentials Mendapatkan konfigurasi jaringan yang disetel dari Ad Manager UI.
getLatencyMillis Mendapatkan jumlah waktu yang dihabiskan jaringan iklan untuk memuat iklan. Hasil 0 jika jaringan tidak dicoba.

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
}