למטרות ניפוי באגים ורישום ביומן, מודעות שנפרסו בהצלחה מספקות אובייקט GADResponseInfo
. האובייקט הזה מכיל מידע על המודעה שהוא טען, בנוסף למידע על רשימת הרשתות בתהליך בחירת הרשת ששימשה לטעינת המודעה.
במקרים שבהם מודעה נטענת בהצלחה, לאובייקט המודעה יש מאפיין GADResponseInfo
. לדוגמה,
GADInterstitialAd.responseInfo
מקבל את פרטי התגובה למודעת מעברון שנטענה.
במקרים שבהם המודעות לא נטענות וזמינה רק שגיאה, אפשר להשתמש ב-GADResponseInfo
באמצעות המפתח GADErrorUserInfoKeyResponseInfo
במילון userInfo
של השגיאה.
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/21775744923/example/interstitial", 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:@"/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 **
{
"creative_id" = "138471856178";
"line_item_id" = "6707237225";
}
** 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
שכוללת מטא-נתונים של כל מתאם שנכלל בתגובה לבקשת המודעה. אפשר להשתמש בה כדי לנפות באגים בבידינג וב-Waterfall Mediation. הסדר ברשימה תואם לסדר של רשימת הרשתות בתהליך בחירת הרשת עבור הבקשה הזו להצגת מודעה.
מידע נוסף זמין במאמר פרטי התגובה של המתאם. |
loadedAdNetworkResponseInfo |
מחזירה את GADAdNetworkResponseInfo שמתאים למתאם
שטען את המודעה. |
adNetworkClassName |
מחזירה את שם המחלקה של מתאם ה-Mediation של רשת המודעות שטענה את המודעה. |
responseIdentifier |
מזהה התגובה הוא מזהה ייחודי של התגובה לבקשת המודעה. אפשר להשתמש במזהה הזה כדי לזהות ולחסום את המודעה במרכז בקרת המודעות. |
extrasDictionary |
מחזירה מידע נוסף על תגובת המודעה. התוספים יכולים להחזיר את המפתחות הבאים:
|
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/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 let creativeID = responseInfo?.extrasDictionary["creative_id"] let lineItemID = responseInfo?.extrasDictionary["line_item_id"] } }
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; NSString *creativeID = responseInfo.extrasDictionary[@"creative_id"]; NSString *lineItemID = responseInfo.extrasDictionary[@"line_item_id"]; }]; }
פרטי התגובה של המתאם
GADAdNetworkResponseInfo
כולל מטא-נתונים לכל מתאם שכלול בתגובה לבקשה להצגת המודעה, שאפשר להשתמש בהם כדי לנפות באגים בביצוע של תהליך הגישור ב-Waterfall והבידינג. הסדר ברשימה תואם לסדר של רשימת הרשתות בתהליך בחירת הרשת עבור הבקשה להצגת מודעה.
דוגמה לפלט של 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 |
השם של המופע של מקור המודעות שמשויך לתגובה של המתאם הזה. הפונקציה מחזירה מחרוזת ריקה אם היא לא מולאה על ידי קבוצת yield. |
adSourceName |
מקור המודעות שמייצג את רשת המודעות הספציפית שמציגה את החשיפה. |
adNetworkClassName |
שם המחלקה של המתאם של רשת המודעות שדרכו נטענה המודעה. |
adUnitMapping |
הגדרת הרשת נקבעה דרך ממשק המשתמש של Ad Manager. |
latency |
משך הזמן שרשת המודעות השקיעה בטעינת מודעה. הפונקציה מחזירה
0 אם לא נעשה ניסיון להתחבר לרשת. |
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/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; }]; }