広告レスポンスに関する情報の取得

デバッグとロギングを行うため、正常に読み込まれた広告には 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 を返します。 広告が読み込まれました
adNetworkClassName 読み込まれた広告ネットワークのメディエーション アダプタのクラス名を返します。 表示されます。
responseIdentifier レスポンス ID は、広告レスポンスの一意の識別子です。この ID を使用して、広告レビュー センター(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;
  }];
}