אחזור מידע על התגובה למודעה

למטרות ניפוי באגים ורישום ביומן, מודעות שנטענו בהצלחה מספקות אובייקט 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": "COOllLGxlPoCFdAx4Aod-Q4A0g",
  "Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter",
  "Adapter Responses": [
    {
      "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
      "Latency": 328,
      "Ad Source Name": "Reservation campaign",
      "Ad Source ID": "7068401028668408324",
      "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
      "Ad Source Instance ID": "4665218928925097",
      "Credentials": {},
      "Ad Error": "null"
    }
  ],
  "Loaded Adapter Response": {
    "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
    "Latency": 328,
    "Ad Source Name": "Reservation campaign",
    "Ad Source ID": "7068401028668408324",
    "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
    "Ad Source Instance ID": "4665218928925097",
    "Credentials": {},
    "Ad Error": "null"
  },
  "Response Extras": {
    "mediation_group_name": "Campaign"
  }
}

השיטות באובייקט ResponseInfo כוללות:

שיטה תיאור
getAdapterResponses מחזירה את הרשימה של AdapterResponseInfo עם מטא-נתונים לכל מתאם שנכלל בתגובה למודעה. אפשר להשתמש בנתונים האלה כדי לנפות באגים בתהליך בחירת הרשת (Mediation) ב-Waterfall ובביצוע הבידינג. הסדר של הרשימה תואם את הסדר של רשימת הרשתות בתהליך בחירת הרשת עבור הבקשה הזו להצגת מודעה.

מידע נוסף זמין במאמר מידע על תגובת המתאם.

getLoadedAdapterResponseInfo הפונקציה מחזירה את הערך AdapterResponseInfo שתואם למתאם שטען את המודעה.
getMediationAdapterClassName הפונקציה מחזירה את שם המחלקה של מתאם תהליך בחירת הרשת (Mediation) של רשת המודעות שנטענו את המודעה.
getResponseId מזהה התגובה הוא מזהה ייחודי של התגובה למודעה. אפשר להשתמש במזהה הזה כדי לזהות ולחסום את המודעה במרכז בקרת המודעות (ARC).
getResponseExtras

הצגת מידע נוסף על התגובה למודעה. תוספות עשויות להחזיר את המפתחות הבאים:

  • mediation_group_name: השם של הקבוצה לבחירת רשת
  • mediation_ab_test_name: השם של בדיקת ה-A/B של תהליך בחירת הרשת (Mediation), אם רלוונטי
  • mediation_ab_test_variant: הווריאנט שבו נעשה שימוש בבדיקת ה-A/B של תהליך בחירת הרשת (Mediation), אם רלוונטי

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();
  Bundle extras = responseInfo.getResponseExtras();
  String mediationGroupName = extras.getString("mediation_group_name");
  String mediationABTestName = extras.getString("mediation_ab_test_name");
  String mediationABTestVariant = extras.getString("mediation_ab_test_variant");
}

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
  val extras = responseInfo.responseExtras
  val mediationGroupName = extras.getString("mediation_group_name")
  val mediationABTestName = extras.getString("mediation_ab_test_name")
  val mediationABTestVariant = extras.getString("mediation_ab_test_variant")
}

פרטי התשובה של המתאם

AdapterResponseInfo מכיל מטא-נתונים לכל מתאם שכלול בתגובה למודעה, וניתן להשתמש בהם לניפוי באגים בתהליך בחירת הרשת (Mediation) ב-Waterfall ובביצוע הבידינג. הסדר ברשימה תואם לסדר ברשימת הרשתות בתהליך בחירת הרשת של הבקשה להצגת מודעה.

הנה פלט לדוגמה של AdapterResponseInfo:

{
  "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
  "Latency": 328,
  "Ad Source Name": "Reservation campaign",
  "Ad Source ID": "7068401028668408324",
  "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
  "Ad Source Instance ID": "4665218928925097",
  "Credentials": {},
  "Ad Error": "null"
}

לכל רשת מודעות, AdapterResponseInfo מספק את השיטות הבאות:

שיטה תיאור
getAdError הפונקציה מחזירה לרשת את השגיאה המשויכת לבקשה. הפונקציה מחזירה את הערך null אם המודעה נטענה בהצלחה ברשת או אם לא התבצע ניסיון לרשת.
getAdSourceId הפונקציה מקבלת את המזהה של מקור המודעות שמשויך לתגובת המתאם הזו. בקמפיינים, הערך 6060308706800320801 מוחזר עבור סוג יעד הקמפיין של מודעות בתהליך בחירת הרשת, ו-7068401028668408324 מוחזר עבור סוגי יעדי חשיפות וקליקים. בקטע מקורות של מודעות מפורטת רשימה של המזהים האפשריים של מקורות המודעות כאשר רשת המודעות מציגה את המודעה.
getAdSourceInstanceId הפונקציה מקבלת את מזהה המופע של מקור המודעות שמשויך לתגובת המתאם הזו.
getAdSourceInstanceName הפונקציה מקבלת את שם המופע של מקור המודעות שמשויך לתגובת המתאם הזו.
getAdSourceName הפונקציה מקבלת את מקור המודעות שמייצג את רשת המודעות הספציפית שמציגה את החשיפה. בקמפיינים, המערכת מחזירה את הערך Mediated House Ads עבור סוג יעד הקמפיין של מודעות בתהליך בחירת הרשת, ואת הערך Reservation Campaign מוחזר עבור סוגי יעדים של חשיפות וקליקים. בקטע מקורות של מודעות מפורטת רשימת השמות האפשריים של מקורות המודעות שרשת המודעות מציגה את המודעה.
getAdapterClassName מקבל את שם המחלקה של המתאם שטען את המודעה.
getCredentials מקבל את הגדרות הרשת שהוגדרו מממשק המשתמש של AdMob .
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
}