Truy xuất thông tin về Nội dung phản hồi quảng cáo

Đối với mục đích gỡ lỗi và ghi nhật ký, quảng cáo đã tải thành công cung cấp GADResponseInfo . Đối tượng này chứa thông tin về quảng cáo mà quảng cáo đã tải, ngoài thông tin về quy trình dàn xếp kiểu thác nước được dùng để tải quảng cáo.

Đối với trường hợp quảng cáo tải thành công, đối tượng quảng cáo có Thuộc tính GADResponseInfo. Ví dụ: GADInterstitialAd.responseInfo nhận thông tin phản hồi cho một quảng cáo xen kẽ đã tải.

Đối với trường hợp quảng cáo không tải được và chỉ có một lỗi, GADResponseInfo có thể sử dụng bằng khoá GADErrorUserInfoKeyResponseInfo trên từ điển userInfo của lỗi.

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);
  }];
}

Thông tin phản hồi

Dưới đây là kết quả mẫu cho thấy dữ liệu gỡ lỗi được trả về cho một quảng cáo đã tải:

** 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

Cơ sở lưu trú trên GADResponseInfo bao gồm:

Thuộc tính Mô tả
adNetworkInfoArray Trả về danh sách GADAdNetworkResponseInfo chứa siêu dữ liệu cho từng bộ chuyển đổi có trong nội dung phản hồi quảng cáo. Có thể được dùng để gỡ lỗi quy trình thực thi đặt giá thầu và dàn xếp kiểu thác nước. Thứ tự của danh sách này khớp với thứ tự của quy trình dàn xếp kiểu thác nước cho yêu cầu quảng cáo này.

Hãy xem bài viết Thông tin về phản hồi của bộ chuyển đổi để biết thêm thông tin của bạn.

loadedAdNetworkResponseInfo Trả về GADAdNetworkResponseInfo tương ứng với trình chuyển đổi đã tải quảng cáo.
adNetworkClassName Trả về tên lớp bộ chuyển đổi dàn xếp của mạng quảng cáo đã tải quảng cáo.
responseIdentifier Giá trị nhận dạng nội dung phản hồi là giá trị nhận dạng riêng biệt của nội dung phản hồi quảng cáo. Chiến dịch này mã nhận dạng có thể được sử dụng để xác định và chặn quảng cáo trong Trung tâm xem xét quảng cáo (ARC).
extrasDictionary

Trả về thông tin bổ sung về nội dung phản hồi quảng cáo.

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;
  }];
}

Thông tin phản hồi của bộ chuyển đổi

GADAdNetworkResponseInfo chứa siêu dữ liệu cho từng bộ chuyển đổi có trong phản hồi quảng cáo có thể được sử dụng để gỡ lỗi cách thực thi đặt giá thầu và dàn xếp kiểu thác nước. Thứ tự của danh sách khớp với thứ tự của quy trình dàn xếp kiểu thác nước cho yêu cầu quảng cáo.

Dưới đây là kết quả GADAdNetworkResponseInfo mẫu:

    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

Đối với mỗi mạng quảng cáo, GADAdNetworkResponseInfo cung cấp những thông tin sau thuộc tính:

Thuộc tính Mô tả
error Lỗi liên quan đến yêu cầu đến mạng. Trả lại hàng nil nếu mạng đã tải quảng cáo thành công hoặc nếu mạng chưa thử.
adSourceId Mã nguồn quảng cáo liên kết với nội dung phản hồi của bộ chuyển đổi này.
adSourceInstanceId Mã phiên bản nguồn quảng cáo được liên kết với bộ chuyển đổi này của bạn.
adSourceInstanceName Tên phiên bản nguồn quảng cáo được liên kết với bộ chuyển đổi này phản hồi. Trả về một chuỗi trống nếu không được một nhóm lợi nhuận lấp đầy.
adSourceName Nguồn quảng cáo đại diện cho mạng quảng cáo cụ thể phân phát lượt hiển thị.
adNetworkClassName Tên lớp của bộ chuyển đổi mạng quảng cáo đã tải quảng cáo.
adUnitMapping Cấu hình mạng được đặt từ Ad Manager Giao diện người dùng.
latency Lượng thời gian cần để mạng quảng cáo tải một quảng cáo. Trả lại hàng 0 nếu chưa thử mạng.

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;
  }];
}