Reklam yanıtıyla ilgili bilgi alma

Hata ayıklama ve günlük kaydı amacıyla, başarılı bir şekilde yüklenen reklamlar GADResponseInfo nesnesini tanımlayın. Bu nesne, yüklendiği reklamla ilgili bilgilerin yanı sıra Reklamı yüklemek için kullanılan uyumlulaştırma şelalesi hakkındaki bilgiler.

Bir reklamın başarıyla yüklendiği durumlarda, reklam nesnesi GADResponseInfo mülk. Örneğin, GADInterstitialAd.responseInfo Kullanıcı, yüklenen bir geçiş reklamına ait yanıt bilgilerini alır.

Reklamların yüklenemediği ve yalnızca bir hatanın mevcut olduğu durumlarda, GADResponseInfo, GADErrorUserInfoKeyResponseInfo anahtarı ile kullanılabilir hatanın userInfo sözlüğünde bulabilirsiniz.

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

Yanıt bilgileri

Aşağıda, yüklenen bir reklam için döndürülen hata ayıklama verilerini gösteren örnek çıktı verilmiştir:

  ** 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 üzerindeki mülkler şunlardır:

Özellik Açıklama
adNetworkInfoArray GADAdNetworkResponseInfo listesini döndürür reklam yanıtında yer alan her bağdaştırıcının meta verilerini içeren meta verileri içerir. Olabilir şelale uyumlulaştırması ve teklifli sistem yürütmede hata ayıklamak için kullanılır. Sıra, Liste, bu reklam isteği için uyumlulaştırma şelalesinin sıralamasıyla eşleşir.

Daha fazla bilgi için Bağdaştırıcı Yanıt Bilgisi konusuna bakın ekleyebilirsiniz.

loadedAdNetworkResponseInfo Adaptöre karşılık gelen GADAdNetworkResponseInfo değerini döndürür bir şablondan oluşur.
adNetworkClassName Yüklenen reklam ağının uyumlulaştırma bağdaştırıcısı sınıf adını döndürür reklam.
responseIdentifier Yanıt tanımlayıcısı, reklam yanıtı için benzersiz bir tanımlayıcıdır. Bu tanımlayıcı, Reklam İnceleme Merkezi'nde (ARC) reklamı tanımlamak ve engellemek için kullanılabilir.
extrasDictionary

Reklam yanıtı hakkında ek bilgi döndürür. . Ekstralar aşağıdaki anahtarları döndürebilir:

  • mediation_group_name: Uyumlulaştırma grubunun adı
  • mediation_ab_test_name: Uyumlulaştırma A/B testinin adı, geçerliyse
  • mediation_ab_test_variant: uyumlulaştırma A/B testi (geçerliyse)

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

Bağdaştırıcı Yanıt Bilgisi

GADAdNetworkResponseInfo reklam yanıtında yer alan her bağdaştırıcı için kullanılabilecek meta verileri içerir hata ayıklaması yapabilirsiniz. Listenin sırası Reklam isteği için uyumlulaştırma şelalesinin sıralamasıyla eşleşir.

Aşağıda örnek GADAdNetworkResponseInfo çıkışı verilmiştir:

    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, her reklam ağı için aşağıdakileri sağlar özellikler:

Özellik Açıklama
error Ağa yapılan istekle ilişkili hata. İadeler nil ağ bir reklamı başarıyla yükleyip yüklemediğinde denenmedi.
adSourceId Bu bağdaştırıcı yanıtıyla ilişkili reklam kaynağı kimliği.. Kampanyalarda, uyumlulaştırılmış bir reklam için 6060308706800320801 döndürülür kampanya hedefi türünü, ve 7068401028668408324 gösterim ve tıklama için döndürülür hedef türleri. Reklam kaynakları bölümüne bakın değerini girin.
adSourceInstanceId Bu bağdaştırıcıyla ilişkili reklam kaynağı örnek kimliği tıklayın.
adSourceInstanceName Bu bağdaştırıcıyla ilişkili reklam kaynağı örneği adı yanıt.
adSourceName Reklamı yayınlayan belirli reklam ağını temsil eden reklam kaynağı gösterim elde etti. Kampanyalarda, Uyumlulaştırılmış reklamlar için Mediated House Ads döndürüldü kampanya hedefi türünü, ve Reservation Campaign gösterim ve tıklama için döndürülür hedef türleri. Reklam kaynakları bölümüne bakın potansiyel reklam kaynağı adlarının listesi için bir reklam ağı reklam
adNetworkClassName Reklamı yükleyen reklam ağı bağdaştırıcısının sınıf adı.
adUnitMapping Ağ yapılandırması AdMob Kullanıcı arayüzü.
latency Reklam ağının bir reklamı yüklemek için harcadığı süredir. İadeler Ağ bağlanmaya çalışılmadıysa 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;
  }];
}