광고 응답에 관한 정보 가져오기

정상적으로 로드된 광고는 디버깅 및 로깅을 위해 GADResponseInfo 드림 객체를 지정합니다. 이 객체에는 로드된 광고에 대한 정보와 광고를 로드하는 데 사용된 연쇄 광고 호출 조정에 대한 정보

광고가 성공적으로 로드되는 경우 광고 객체에는 GADResponseInfo 속성입니다. 예를 들어 GADInterstitialAd.responseInfo 드림 로드된 전면 광고의 응답 정보를 가져옵니다.

광고가 로드되지 않고 오류만 발생한 경우에는 GADResponseInfoGADErrorUserInfoKeyResponseInfo 키를 통해 사용할 수 있습니다. 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를 반환합니다. 모든 URL의 하위 클래스입니다.
adNetworkClassName 로드된 광고 네트워크의 미디에이션 어댑터 클래스 이름을 반환합니다. 합니다.
responseIdentifier 응답 식별자는 광고 응답의 고유 식별자입니다. 이 식별자를 사용하여 광고 심사 센터 (ARC)에서 광고를 식별하고 차단할 수 있습니다.
extrasDictionary <ph type="x-smartling-placeholder">

광고 응답에 대한 추가 정보를 반환합니다.

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 드림 사용할 수 있는 광고 응답에 포함된 각 어댑터의 메타데이터를 포함합니다. 폭포식 구조 미디에이션 및 입찰 실행을 디버깅해야 합니다 목록의 순서 광고 요청에 대한 연쇄 광고 호출 조정의 순서와 일치합니다.

다음은 샘플 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 이 어댑터 응답과 연결된 광고 소스 ID입니다.
adSourceInstanceId 이 어댑터와 연결된 광고 소스 인스턴스 ID입니다. 있습니다.
adSourceInstanceName 이 어댑터와 연결된 광고 소스 인스턴스 이름입니다. 있습니다. 다음을 반환합니다. 수익 그룹으로 채워지지 않은 경우 빈 문자열이 반환됩니다.
adSourceName 광고를 게재하는 특정 광고 네트워크를 나타내는 있습니다.
adNetworkClassName 광고를 로드한 광고 네트워크 어댑터의 클래스 이름입니다.
adUnitMapping Ad Manager UI
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;
  }];
}