למטרות ניפוי באגים ורישום ביומן, מודעות שנטענו בהצלחה מספקות אובייקט GADResponseInfo. האובייקט הזה מכיל מידע על המודעה שנטענה, בנוסף למידע על רשימת הרשתות בתהליך בחירת הרשת ששימשה לטעינת המודעה.
במקרים שבהם המודעה נטענת בהצלחה, לאובייקט המודעה יש את המאפיין GADResponseInfo. לדוגמה,
GADInterstitialAd.responseInfo
מקבל את פרטי התגובה של מודעת מעברון שנטענה.
במקרים שבהם המודעות לא נטענות ורק שגיאה זמינה, ה-GADResponseInfo זמין באמצעות המפתח GADErrorUserInfoKeyResponseInfo במילון userInfo של השגיאה.
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in if let error = error { let responseInfo = (error as NSError).userInfo[GADErrorUserInfoKeyResponseInfo] as? ResponseInfo print("\(String(describing: responseInfo))") return } let responseInfo = ad?.responseInfo print("\(String(describing: responseInfo))") } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { if (error) { GADResponseInfo *responseInfo = error.userInfo[GADErrorUserInfoKeyResponseInfo]; NSLog(@"%@", responseInfo.description); return; } GADResponseInfo *responseInfo = ad.responseInfo; NSLog(@"%@", responseInfo.description); }]; }
פרטי התשובה
הנה פלט לדוגמה שמציג את נתוני ניפוי הבאגים שהוחזרו עבור מודעה שנטענה:
** Response Info **
Response ID: CLz5r-KMtfoCFQvv7QodfGAMHw
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.357
** 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.357
הנכסים ב-GADResponseInfo כוללים:
| נכס | תיאור |
|---|---|
adNetworkInfoArray |
הפונקציה מחזירה את רשימת האובייקטים מסוג GADAdNetworkResponseInfo שמכילים מטא-נתונים של כל מתאם שנכלל בתגובה למודעה. אפשר להשתמש בו כדי לנפות באגים בתהליך בחירת הרשת (Mediation) ובבידינג. הסדר של הרשימה תואם לסדר של רשימת הרשתות בתהליך בחירת הרשת של הבקשה הזו להצגת מודעה.
מידע נוסף זמין בקטע פרטי התגובה של המתאם. |
loadedAdNetworkResponseInfo |
מחזירה את הערך של GADAdNetworkResponseInfo שתואם למתאם
שטען את המודעה. |
adNetworkClassName |
מחזירה את שם הסיווג של מתאם תהליך בחירת הרשת של רשת המודעות שטענה את המודעה. |
responseIdentifier |
מזהה התגובה הוא מזהה ייחודי של התגובה לבקשה להצגת מודעה. אפשר להשתמש במזהה הזה כדי לזהות ולחסום את המודעה במרכז בקרת המודעות (ARC). |
extrasDictionary |
הפונקציה מחזירה מידע נוסף על התגובה לבקשה להצגת מודעה. התוספות עשויות להחזיר את המפתחות הבאים:
|
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in let responseInfo = ad?.responseInfo let responseIdentifier = responseInfo?.responseIdentifier let adNetworkClassName = responseInfo?.adNetworkClassName let adNetworkInfoArray = responseInfo?.adNetworkInfoArray let loadedAdNetworkResponseInfo = responseInfo?.loadedAdNetworkResponseInfo let mediationGroupName = responseInfo?.extrasDictionary["mediation_group_name"] let mediationABTestName = responseInfo?.extrasDictionary["mediation_ab_test_name"] let mediationABTestVariant = responseInfo?.extrasDictionary["mediation_ab_test_variant"] } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { GADResponseInfo *responseInfo = ad.responseInfo; NSString *responseIdentifier = responseInfo.responseIdentifier; NSString *adNetworkClassName = responseInfo.adNetworkClassName; NSArray *adNetworkInfoArray = responseInfo.adNetworkInfoArray; GADAdNetworkResponseInfo *loadedAdNetworkResponseInfo = responseInfo.loadedAdNetworkResponseInfo; NSString *mediationGroupName = responseInfo.extrasDictionary[@"mediation_group_name"]; NSString *mediationABTestName = responseInfo.extrasDictionary[@"mediation_ab_test_name"]; NSString *mediationABTestVariant = responseInfo.extrasDictionary[@"mediation_ab_test_variant"]; }]; }
מידע על התגובה של המתאם
GADAdNetworkResponseInfo
מכיל מטא-נתונים לכל מתאם שנכלל בתגובה למודעה, שאפשר להשתמש בהם כדי לנפות באגים בביצוע של הבידינג ושל רשימת הרשתות בתהליך בחירת הרשת. סדר הרשימה תואם לסדר של רשימת הרשתות בתהליך בחירת הרשת של הבקשה להצגת מודעה.
הנה פלט לדוגמה של GADAdNetworkResponseInfo:
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.277
לכל רשת מודעות, GADAdNetworkResponseInfo מספק את המאפיינים הבאים:
| נכס | תיאור |
|---|---|
error |
השגיאה שמשויכת לבקשה לרשת. מחזירה nil אם הרשת טענה מודעה בהצלחה או אם לא בוצע ניסיון לטעון מודעה מהרשת. |
adSourceId |
מזהה מקור המודעות שמשויך לתגובה הזו של המתאם.
בקמפיינים, הערך 6060308706800320801 מוחזר עבור סוג יעד של קמפיין מודעות בתהליך בחירת הרשת, והערך 7068401028668408324 מוחזר עבור סוגי יעדים של חשיפות ויעדי קליקים. בקטע מקורות של מודעות מפורטים המזהים האפשריים של מקורות המודעות כשרשת מודעות מציגה את המודעה. |
adSourceInstanceId |
מזהה המופע של מקור המודעות שמשויך לתגובה הזו של המתאם. |
adSourceInstanceName |
השם של המופע של מקור המודעות שמשויך לתגובה הזו של המתאם. |
adSourceName |
מקור המודעות שמייצג את רשת המודעות הספציפית שמציגה את המודעה. בקמפיינים, הערך Mediated House Ads מוחזר עבור סוג יעד של קמפיין למודעות בתהליך בחירת הרשת, והערך Reservation Campaign מוחזר עבור סוגי יעדים של חשיפות ויעדי קליקים. בקטע מקורות מודעות מפורטים השמות האפשריים של מקורות המודעות כשרשת מודעות מציגה את המודעה. |
adNetworkClassName |
שם המחלקה של המתאם של רשת המודעות שטען את המודעה. |
adUnitMapping |
הגדרת הרשת שנקבעה בממשק המשתמש של AdMob. |
latency |
משך הזמן שלקח לרשת המודעות לטעון מודעה. הפונקציה מחזירה את הערך 0 אם לא בוצע ניסיון להתחבר לרשת. |
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in let responseInfo = ad?.responseInfo let loadedAdNetworkResponseInfo = responseInfo?.loadedAdNetworkResponseInfo let adNetworkError = loadedAdNetworkResponseInfo?.error let adSourceId = loadedAdNetworkResponseInfo?.adSourceID let adSourceInstanceId = loadedAdNetworkResponseInfo?.adSourceInstanceID let adSourceInstanceName = loadedAdNetworkResponseInfo?.adSourceInstanceName let adSourceName = loadedAdNetworkResponseInfo?.adSourceName let adNetworkClassName = loadedAdNetworkResponseInfo?.adNetworkClassName let adUnitMapping = loadedAdNetworkResponseInfo?.adUnitMapping let latency = loadedAdNetworkResponseInfo?.latency } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { GADResponseInfo *responseInfo = ad.responseInfo; GADAdNetworkResponseInfo *loadedAdNetworkResponseInfo = responseInfo.loadedAdNetworkResponseInfo; NSError *adNetworkError = loadedAdNetworkResponseInfo.error; NSString *adSourceId = loadedAdNetworkResponseInfo.adSourceID; NSString *adSourceInstanceId = loadedAdNetworkResponseInfo.adSourceInstanceID; NSString *adSourceInstanceName = loadedAdNetworkResponseInfo.adSourceInstanceName; NSString *adSourceName = loadedAdNetworkResponseInfo.adSourceName; NSString *adNetworkClassName = loadedAdNetworkResponseInfo.adNetworkClassName; NSDictionary*adUnitMapping = loadedAdNetworkResponseInfo.adUnitMapping; NSTimeInterval latency = loadedAdNetworkResponseInfo.latency; }]; }