為了偵錯和記錄,成功載入的廣告會提供
GADResponseInfo
敬上
物件。這個物件包含所載入廣告的相關資訊,以及
用來載入廣告的中介服務刊登序列相關資訊。
如果廣告成功載入,廣告物件會有
GADResponseInfo
屬性。例如:
GADInterstitialAd.responseInfo
敬上
取得已載入插頁式廣告的回應資訊。
如果廣告無法載入且只顯示錯誤,
使用 GADErrorUserInfoKeyResponseInfo
鍵可以使用 GADResponseInfo
相關的 userInfo
字典。
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "ca-app-pub-3940256099942544/4411468910", 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:@"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 的清單
包含廣告回應中每個轉接程式的中繼資料。可以是
用於對刊登序列中介服務和出價執行錯誤進行偵錯。請注意,
清單就會比對廣告請求的中介服務刊登序列順序
詳情請參閱轉接程式回應資訊 可能不準確或不適當 |
loadedAdNetworkResponseInfo |
傳回與轉接程式對應的 GADAdNetworkResponseInfo
載入廣告 |
adNetworkClassName |
傳回載入的廣告聯播網的中介服務轉接程式類別名稱 廣告。 |
responseIdentifier |
回應 ID 是廣告回應的專屬 ID。這個 ID 可用來在廣告檢閱中心 (ARC) 中找出並封鎖廣告。 |
extrasDictionary |
傳回廣告回應的額外資訊。 Extras 可能會傳回下列鍵:
|
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "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 |
與這個轉接程式回應相關聯的廣告來源 ID。
對於廣告活動,中介服務廣告會傳回 6060308706800320801
廣告活動目標類型
系統會針對曝光和點擊傳回 7068401028668408324
目標類型查看廣告來源
系統會傳回可能的廣告來源 ID 清單。 |
adSourceInstanceId |
與這個轉接程式相關聯的廣告來源執行個體 ID 回應。 |
adSourceInstanceName |
與這個轉接程式相關聯的廣告來源執行個體名稱 回應。 |
adSourceName |
代表放送廣告的特定廣告聯播網的廣告來源
以廣告活動來說
中介服務的廣告會傳回 Mediated House Ads
廣告活動目標類型
系統會針對曝光和點擊傳回 Reservation Campaign
目標類型查看廣告來源
會列出系統提供的
廣告。 |
adNetworkClassName |
載入廣告的廣告聯播網轉接程式類別名稱。 |
adUnitMapping |
當中的網路設定 AdMob 使用者介面。 |
latency |
廣告聯播網載入廣告的時間長度。退貨程序
如未嘗試網路,則為 0 。 |
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "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; }]; }