โฆษณาที่โหลดสําเร็จจะแสดงออบเจ็กต์ GADResponseInfo
เพื่อการแก้ไขข้อบกพร่องและการบันทึก ออบเจ็กต์นี้มีข้อมูลเกี่ยวกับโฆษณาที่โหลด นอกเหนือจากข้อมูลเกี่ยวกับการแสดงโฆษณาสื่อกลางตามลำดับขั้น (Waterfall Mediation) ที่ใช้โหลดโฆษณา
ในกรณีที่โฆษณาโหลดสําเร็จ ออบเจ็กต์โฆษณาจะมีพร็อพเพอร์ตี้ 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 ที่มีข้อมูลเมตาสําหรับอะแดปเตอร์แต่ละรายการที่รวมอยู่ในการตอบกลับโฆษณา ใช้แก้ไขข้อบกพร่องของการแสดงโฆษณาสื่อกลางตามลำดับขั้นและการดำเนินการเสนอราคาได้ ลําดับของรายการตรงกับลําดับของการแสดงโฆษณาสื่อกลางตามลำดับขั้นสําหรับคําขอโฆษณานี้
ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลการตอบกลับของอะแดปเตอร์ |
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
มีข้อมูลเมตาสําหรับอะแดปเตอร์แต่ละรายการที่รวมอยู่ในการตอบกลับของโฆษณา ซึ่งสามารถใช้เพื่อแก้ไขข้อบกพร่องของสื่อกลาง 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 |
ชื่ออินสแตนซ์แหล่งที่มาของโฆษณาที่เชื่อมโยงกับการตอบกลับของอะแดปเตอร์นี้ แสดงผลสตริงว่างหากกลุ่มผลตอบแทนไม่ได้กรอกข้อมูล |
adSourceName |
แหล่งที่มาของโฆษณาที่แสดงเครือข่ายโฆษณาที่เฉพาะเจาะจงซึ่งแสดงการแสดงผล |
adNetworkClassName |
ชื่อคลาสของอะแดปเตอร์เครือข่ายโฆษณาที่โหลดโฆษณา |
adUnitMapping |
การกําหนดค่าเครือข่ายที่ตั้งค่าจาก UI ของ 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; }]; }