למטרות ניפוי באגים ורישום ביומן, מודעות שנטענו בהצלחה מספקות אובייקט ResponseInfo
. האובייקט מכיל מידע על המודעה שהוא נטען, בנוסף למידע על רשימת הרשתות בתהליך בחירת הרשת ששימשה לטעינת המודעה.
במקרים שבהם מודעה נטענת בהצלחה, לאובייקט המודעה יש שיטה getResponseInfo()
. לדוגמה, הקוד InterstitialAd.getResponseInfo()
מקבל את פרטי התגובה של מודעת מעברון שנטענה.
במקרים שבהם מודעות לא נטענות ומוצגת רק הודעת שגיאה, המידע על התגובות זמין דרך 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()) }
פרטי התשובה
לפניכם פלט לדוגמה שהוחזר על ידי ResponseInfo.toString()
, שבו מוצגים נתוני ניפוי הבאגים שהוחזרו למודעה שנטענה:
{
"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": {}
}
השיטות באובייקט ResponseInfo
כוללות:
שיטה | תיאור |
---|---|
getAdapterResponses |
מחזירה את הרשימה של AdapterResponseInfo עם מטא-נתונים לכל מתאם שנכלל בתגובה למודעה. אפשר להשתמש בנתונים האלה כדי לנפות באגים בתהליך בחירת הרשת (Mediation) ב-Waterfall ובביצוע הבידינג. הסדר של
הרשימה תואם את הסדר של רשימת הרשתות בתהליך בחירת הרשת עבור הבקשה הזו להצגת מודעה.
מידע נוסף זמין במאמר מידע על תגובת המתאם. |
getLoadedAdapterResponseInfo |
הפונקציה מחזירה את הערך AdapterResponseInfo שתואם למתאם
שטען את המודעה. |
getMediationAdapterClassName |
הפונקציה מחזירה את שם המחלקה של מתאם תהליך בחירת הרשת (Mediation) של רשת המודעות שנטענו את המודעה. |
getResponseId |
מזהה התגובה הוא מזהה ייחודי של התגובה למודעה. אפשר להשתמש במזהה הזה כדי לזהות ולחסום את המודעה במרכז בקרת המודעות (ARC). |
getResponseExtras |
הצגת מידע נוסף על התגובה למודעה. |
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 }
פרטי התשובה של המתאם
AdapterResponseInfo
מכיל מטא-נתונים לכל מתאם שכלול בתגובה למודעה, וניתן להשתמש בהם לניפוי באגים בתהליך בחירת הרשת (Mediation) ב-Waterfall ובביצוע הבידינג. הסדר ברשימה תואם לסדר ברשימת הרשתות בתהליך בחירת הרשת של הבקשה להצגת מודעה.
הנה פלט לדוגמה של 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"
}
לכל רשת מודעות, AdapterResponseInfo
מספק את השיטות הבאות:
שיטה | תיאור |
---|---|
getAdError |
הפונקציה מחזירה לרשת את השגיאה המשויכת לבקשה. הפונקציה מחזירה את הערך
null אם המודעה נטענה בהצלחה ברשת או אם
לא התבצע ניסיון לרשת. |
getAdSourceId |
הפונקציה מקבלת את המזהה של מקור המודעות שמשויך לתגובת המתאם הזו. |
getAdSourceInstanceId |
הפונקציה מקבלת את מזהה המופע של מקור המודעות שמשויך לתגובת המתאם הזו. הפונקציה מחזירה מחרוזת ריקה אם היא לא מולאה על ידי קבוצת תפוקה. |
getAdSourceInstanceName |
הפונקציה מקבלת את שם המופע של מקור המודעות שמשויך לתגובת המתאם הזו. |
getAdSourceName |
הפונקציה מקבלת את מקור המודעות שמייצג את רשת המודעות הספציפית שמציגה את החשיפה. |
getAdapterClassName |
מקבל את שם המחלקה של המתאם שטען את המודעה. |
getCredentials |
מקבל את הגדרות הרשת שהוגדרו מממשק המשתמש של Ad Manager . |
getLatencyMillis |
הפונקציה מקבלת את משך הזמן ברשת המודעות שהקדישה לטעינת מודעה. הפונקציה מחזירה את הערך
0 אם לא ניסית את הרשת. |
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 }