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

למטרות ניפוי באגים ורישום ביומן, מודעות שנטענו בהצלחה מספקות אובייקט ResponseInfo. האובייקט מכיל מידע על המודעה שהוא נטען, בנוסף למידע על רשימת הרשתות בתהליך בחירת הרשת ששימשה לטעינת המודעה.

במקרים שבהם מודעה נטענת בהצלחה, לאובייקט המודעה יש שיטה GetResponseInfo(). לדוגמה, InterstitialAd.GetResponseInfo() מקבל את פרטי התגובה של מודעת מעברון שנטענה.

במקרים שבהם מודעות לא נטענות ומוצגת רק הודעת שגיאה, המידע בתגובה זמין דרך AdFailedToLoadEventArgs.LoadAdError.GetResponseInfo().

InterstitialAd ad;

private void RequestInterstitial()
{
    ad = new InterstitialAd("AD_UNIT_ID");
    this.interstitial.OnAdLoaded += OnAdLoaded;
    this.interstitial.OnAdFailedToLoad += HandleOnAdFailedToLoad;
    AdRequest request = new AdRequest.Builder().Build();
    this.interstitial.LoadAd(request);
}

private void OnAdLoaded(object sender, EventArgs args)
{
    ResponseInfo info = ad.GetResponseInfo();
}

private void OnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
    ResponseInfo info = args.LoadAdError.GetResponseInfo();
}

פרטי התשובה

לפניכם פלט לדוגמה שמוחזר על ידי ResponseInfo.ToString() ובו נתוני ניפוי הבאגים שהוחזרו למודעה שנטענה:

Android

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

iOS

 ** Response Info **
    Response ID: CIzs0ZO5kPoCFRqWAAAdJMINpQ
    Network: GADMAdapterGoogleAdMobAds

  ** Loaded Adapter Response **
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name: Reservation campaign
    Ad Source ID: 7068401028668408324
    Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
    {
    }
    Error: (null)
    Latency: 0.391

  ** Extras Dictionary **
    {
        "mediation_group_name" = Campaign;
    }

  ** Mediation line items **
    Entry (1)
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name: Reservation campaign
    Ad Source ID:7068401028668408324
    Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
    {
    }
    Error: (null)
    Latency: 0.391

השיטות באובייקט 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), אם רלוונטי

הנה דוגמה לערכי קריאה מ-ResponseInfo שנטען:

private void OnAdLoaded(object sender, EventArgs args)
{
  ResponseInfo info = ad.GetResponseInfo();

  string responseId = responseInfo.GetResponseId();
  string mediationAdapterClassName = responseInfo.GetMediationAdapterClassName();
  List<AdapterResponseInfo> adapterResponses = responseInfo.GetAdapterResponses();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
  Dictionary<string, string> extras = responseInfo.GetResponseExtras();
  string mediationGroupName = extras["mediation_group_name"];
  string mediationABTestName = extras["mediation_ab_test_name"];
  string mediationABTestVariant = extras["mediation_ab_test_variant"];
}

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

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

הנה פלט לדוגמה שהוחזר על ידי AdapterResponseInfo:

Android

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

iOS

  Network: GADMAdapterGoogleAdMobAds
  Ad Source Name: Reservation campaign
  Ad Source ID: 7068401028668408324
  Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
  Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
  AdUnitMapping:
  {
  }
  Error: (null)
  Latency: 0.391

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

שיטה תיאור
AdError הפונקציה מחזירה לרשת את השגיאה המשויכת לבקשה. הפונקציה מחזירה את הערך null אם המודעה נטענה בהצלחה ברשת או אם לא התבצע ניסיון לרשת.
AdSourceId הפונקציה מקבלת את המזהה של מקור המודעות שמשויך לתגובת המתאם הזו. בקמפיינים, הערך 6060308706800320801 מוחזר עבור סוג יעד הקמפיין של מודעות בתהליך בחירת הרשת, ו-7068401028668408324 מוחזר עבור סוגי יעדים של חשיפות וקליקים. בקטע מקורות של מודעות מפורטת רשימה של המזהים האפשריים של מקורות המודעות כאשר רשת המודעות מציגה את המודעה.
AdSourceInstanceId הפונקציה מקבלת את מזהה המופע של מקור המודעות שמשויך לתגובת המתאם הזו.
AdSourceInstanceName הפונקציה מקבלת את שם המופע של מקור המודעות שמשויך לתגובת המתאם הזו.
AdSourceName הפונקציה מקבלת את מקור המודעות שמייצג את רשת המודעות הספציפית שמציגה את החשיפה. בקמפיינים, הערך Mediated House Ads מוחזר עבור סוג יעד הקמפיין של מודעות בתהליך בחירת הרשת, ו-Reservation Campaign מוחזר עבור סוגי יעדים של חשיפות וקליקים. בקטע מקורות של מודעות מפורטת רשימת השמות האפשריים של מקורות המודעות שרשת המודעות מציגה את המודעה.
AdapterClassName מקבלת שם מחלקה שמזהה את רשת המודעות.
AdUnitMapping מקבלת את הגדרות הרשת שהוגדרו מממשק המשתמש של AdMob.
LatencyMillis הפונקציה מקבלת את משך הזמן ברשת המודעות שהקדישה לטעינת מודעה. הפונקציה מחזירה את הערך 0 אם לא ניסית את הרשת.

הנה דוגמה לערכי קריאה מ-AdapterResponseInfo שנטען:

private void OnAdLoaded(object sender, EventArgs args)
{
  ResponseInfo responseInfo = ad.GetResponseInfo();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo();

  AdError adError = loadedAdapterResponseInfo.AdError;
  string adSourceId = loadedAdapterResponseInfo.AdSourceId;
  string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
  string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
  string adSourceName = loadedAdapterResponseInfo.AdSourceName;
  string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
  Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;
  long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
}