Mengambil Informasi tentang Respons Iklan

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

Untuk kasus ketika iklan berhasil dimuat, objek iklan memiliki metode getResponseInfo(). Misalnya, InterstitialAd.getResponseInfo() mendapatkan info respons untuk iklan interstisial yang dimuat.

Jika iklan gagal dimuat dan hanya error yang tersedia, info respons akan 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 adalah contoh output yang ditampilkan oleh ResponseInfo.toString() yang menampilkan 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 mencakup:

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

Lihat Info Respons Adaptor untuk mengetahui informasi selengkapnya.

getLoadedAdapterResponseInfo Menampilkan AdapterResponseInfo yang sesuai dengan adaptor yang memuat iklan.
getMediationAdapterClassName Menampilkan nama class adaptor mediasi dari jaringan iklan yang memuat iklan.
getResponseId ID respons adalah ID unik untuk respons iklan. ID 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<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
}

Info Respons Adaptor

AdapterResponseInfo berisi metadata untuk setiap adaptor yang disertakan dalam respons iklan yang dapat digunakan untuk men-debug mediasi waterfall dan eksekusi bidding. 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. Menampilkan 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 respons adaptor ini. Menampilkan string kosong jika tidak diisi oleh grup hasil.
getAdSourceInstanceName Mendapatkan nama instance sumber iklan yang terkait dengan respons adaptor ini.
getAdSourceName Mendapatkan sumber iklan yang mewakili jaringan iklan tertentu yang menayangkan 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. Menampilkan 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
}