למטרות ניפוי באגים ורישום ביומן, מודעות שנטענו בהצלחה מספקות אובייקט GADResponseInfo
. האובייקט הזה מכיל מידע על המודעה שהמערכת טעינת, בנוסף למידע על רשימת הרשתות בתהליך בחירת הרשת ששימשה לטעינת המודעה.
במקרים שבהם מודעה נטענת בהצלחה, לאובייקט המודעה יש את המאפיין GADResponseInfo
. לדוגמה, GADInterstitialAd.responseInfo
מקבל את פרטי התגובה של מודעת מעברון טעונה.
במקרים שבהם המודעות לא נטענות וזמינה רק שגיאה, הערך של GADResponseInfo
זמין באמצעות המפתח GADErrorUserInfoKeyResponseInfo
במילון userInfo
של השגיאה.
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "/21775744923/example/interstitial", request: request ) { (ad, error) in if let error = error { let responseInfo = (error as NSError).userInfo[GADErrorUserInfoKeyResponseInfo] as? GADResponseInfo print("\(String(describing: responseInfo))") return } let responseInfo = ad?.responseInfo print("\(String(describing: responseInfo))") } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"/21775744923/example/interstitial" 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: BmnCZaSbE_6Mur8P5su8gAY
Network: GADMAdapterGoogleAdMobAds
** Loaded Adapter Response **
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
** Extras Dictionary **
{
}
** Mediation line items **
Entry (1)
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
המאפיינים ב-GADResponseInfo
כוללים:
נכס | תיאור |
---|---|
adNetworkInfoArray |
הפונקציה מחזירה את הרשימה של GADAdNetworkResponseInfo
שמכילה מטא-נתונים של כל מתאם שכלול בתגובה של המודעה. אפשר להשתמש בה כדי לנפות באגים בתהליך בחירת הרשת (Mediation) ובביצוע הבידינג ב-Waterfall. הסדר של הרשימה תואם לסדר של רשימת הרשתות בתהליך בחירת הרשת של הבקשה הזו להצגת מודעה.
מידע נוסף זמין במאמר פרטי התגובה של המתאם. |
loadedAdNetworkResponseInfo |
הפונקציה מחזירה את הערך של GADAdNetworkResponseInfo שמתאים למתאם שטען את המודעה. |
adNetworkClassName |
הפונקציה מחזירה את שם הכיתה של מתאם בחירת הרשת של רשת המודעות שהטעינה את המודעה. |
responseIdentifier |
מזהה התגובה הוא מזהה ייחודי של התגובה לבקשת מודעה. אפשר להשתמש במזהה הזה כדי לזהות ולחסום את המודעה במרכז בקרת המודעות (ARC). |
extrasDictionary |
הפונקציה מחזירה מידע נוסף על התגובה למודעה. |
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "/21775744923/example/interstitial", 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 } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"/21775744923/example/interstitial" 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; }]; }
מידע על תגובת המתאם
GADAdNetworkResponseInfo
מכיל מטא-נתונים לכל מתאם שכלול בתגובה של המודעה, שאפשר להשתמש בהם כדי לנפות באגים בתהליך בחירת הרשת ובביצוע הבידינג. הסדר של הרשימה תואם לסדר של רשימת הרשתות בתהליך בחירת הרשת של הבקשה להצגת מודעה.
לפניכם דוגמה לפלט של GADAdNetworkResponseInfo
:
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
GADAdNetworkResponseInfo
מספק את המאפיינים הבאים לכל רשת מודעות:
נכס | תיאור |
---|---|
error |
השגיאה שמשויכת לבקשה לרשת. הפונקציה מחזירה את הערך nil אם הרשת טעינת מודעה בהצלחה, או אם לא בוצע ניסיון לטעינת מודעה מהרשת. |
adSourceId |
מזהה מקור המודעות שמשויך לתגובה הזו של המתאם. |
adSourceInstanceId |
מזהה המופע של מקור המודעות שמשויך לתשובה של המתאם. |
adSourceInstanceName |
השם של מופע מקור המודעות שמשויך לתשובה של המתאם. הפונקציה מחזירה מחרוזת ריקה אם היא לא מולאה על ידי קבוצת תשואה. |
adSourceName |
מקור המודעות שמייצג את רשת המודעות הספציפית שמציגה את החשיפות. |
adNetworkClassName |
שם המחלקה של מתאם רשת המודעות שהטעין את המודעה. |
adUnitMapping |
הגדרת הרשת שמוגדרת בממשק המשתמש של Ad Manager. |
latency |
משך הזמן שרשת המודעות הקדישה לטעינת מודעה. הפונקציה מחזירה את הערך 0 אם לא בוצע ניסיון להתחבר לרשת. |
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "/21775744923/example/interstitial", 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:@"/21775744923/example/interstitial" 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; }]; }