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 }