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

למטרות ניפוי באגים ורישום ביומן, מודעות שנטענות בהצלחה מספקות אובייקט 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 הפונקציה מחזירה את שם הכיתה של מתאם בחירת הרשת של רשת המודעות שהטעינה את המודעה.
GetResponseId מזהה התגובה הוא מזהה ייחודי של התגובה לבקשת מודעה. אפשר להשתמש במזהה הזה כדי לזהות ולחסום את המודעה במרכז בקרת המודעות (ARC).
GetResponseExtras הפונקציה מחזירה מידע נוסף על התגובה למודעה. התוספות יכולות להחזיר את המפתחות הבאים:
  • mediation_group_name: שם הקבוצה לבחירת רשת (Mediation)
  • mediation_ab_test_name: השם של בדיקת ה-A/B של תהליך בחירת הרשת, אם רלוונטי.
  • mediation_ab_test_variant: הווריאנט שנעשה בו שימוש בבדיקת ה-A/B של תהליך בחירת הרשת, אם רלוונטי

דוגמה לקריאת ערכים מ-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 מכיל מטא-נתונים לכל מתאם שכלול בתגובה להצגת מודעה, ואפשר להשתמש בהם כדי לנפות באגים בהפעלת הבידינג וברשימת הרשתות בתהליך בחירת הרשת. הסדר של הרשימה תואם לסדר של רשימת הרשתות בתהליך בחירת הרשת של הבקשה להצגת מודעה.

זוהי דוגמה לפלט שחוזרת הפונקציה 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 UI.
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;
}