เรียกดูข้อมูลเกี่ยวกับการตอบสนองของโฆษณา

โฆษณาที่โหลดสำเร็จจะมีออบเจ็กต์ GADResponseInfo เพื่อช่วยในการแก้ไขข้อบกพร่องและการบันทึก ออบเจ็กต์นี้มีข้อมูลเกี่ยวกับโฆษณาที่โหลด นอกเหนือจากข้อมูลเกี่ยวกับ Waterfall ของสื่อกลางที่ใช้โหลดโฆษณา

ในกรณีที่โฆษณาโหลดสำเร็จ ออบเจ็กต์โฆษณาจะมีพร็อพเพอร์ตี้ GADResponseInfo เช่น GADInterstitialAd.responseInfo รับข้อมูลการตอบสนองของโฆษณาคั่นระหว่างหน้าที่โหลด

ในกรณีที่มีการโหลดโฆษณาไม่สำเร็จและมีเฉพาะข้อผิดพลาด ระบบจะแสดง GADResponseInfo โดยใช้คีย์ GADErrorUserInfoKeyResponseInfo ในพจนานุกรม 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 ที่มีข้อมูลเมตาสำหรับอะแดปเตอร์แต่ละตัวที่รวมอยู่ในการตอบกลับโฆษณา ใช้เพื่อแก้ไขข้อบกพร่องของสื่อกลาง Waterfall และการดำเนินการเสนอราคาได้ ลำดับของรายการตรงกับลำดับการแสดงโฆษณาสื่อกลางตามลำดับขั้นสำหรับคำขอโฆษณานี้

ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลการตอบกลับอะแดปเตอร์

loadedAdNetworkResponseInfo แสดง GADAdNetworkResponseInfo ที่สอดคล้องกับอะแดปเตอร์ที่โหลดโฆษณา
adNetworkClassName แสดงชื่อคลาสอะแดปเตอร์สื่อกลางของเครือข่ายโฆษณาที่โหลดโฆษณา
responseIdentifier ตัวระบุการตอบกลับเป็นตัวระบุที่ไม่ซ้ำกันสําหรับการตอบกลับโฆษณา คุณใช้ตัวระบุนี้เพื่อระบุและบล็อกโฆษณาในศูนย์ตรวจสอบโฆษณา (ARC) ได้
extrasDictionary

แสดงข้อมูลเพิ่มเติมเกี่ยวกับการตอบกลับของโฆษณา ส่วนเสริมอาจส่งคืนคีย์ต่อไปนี้:

  • mediation_group_name: ชื่อของกลุ่มสื่อกลาง
  • mediation_ab_test_name: ชื่อของการทดสอบ A/B สำหรับสื่อกลาง (หากมี)
  • mediation_ab_test_variant: ตัวแปรที่ใช้ในการทดสอบ A/B สำหรับสื่อกลาง (หากมี)

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 มีข้อมูลเมตาสำหรับอะแดปเตอร์แต่ละรายการที่รวมอยู่ในการตอบกลับโฆษณา ซึ่งสามารถใช้เพื่อแก้ไขข้อบกพร่องของสื่อกลาง Waterfall และการดำเนินการเสนอราคาได้ ลำดับของรายการจะตรงกับลำดับการแสดงโฆษณาสื่อกลางตามลำดับขั้นของคำขอโฆษณา

ต่อไปนี้คือตัวอย่างเอาต์พุต 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 UI
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;
  }];
}