Hata ayıklama ve günlük kaydı amacıyla, başarıyla yüklenen reklamlar bir GADResponseInfo
nesnesi sağlar. Bu nesne, yüklenen reklamla ilgili bilgilerin yanı sıra reklamı yüklemek için kullanılan uyumlulaştırma şelalesiyle ilgili bilgileri de içerir.
Reklamın başarıyla yüklendiği durumlarda reklam nesnesinin bir GADResponseInfo
özelliği vardır. Örneğin,
GADInterstitialAd.responseInfo
<0xx0A>yüklenen bir geçiş reklamının yanıt bilgilerini alır.
Reklamların yüklenemediği ve yalnızca bir hatanın mevcut olduğu durumlarda, hatanın userInfo
sözlüğündeki GADErrorUserInfoKeyResponseInfo
anahtarı kullanılarak GADResponseInfo
kullanılabilir.
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in if let error = error { let responseInfo = (error as NSError).userInfo[GADErrorUserInfoKeyResponseInfo] as? ResponseInfo 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
Yüklenen bir reklam için döndürülen hata ayıklama verilerini gösteren örnek çıkışı aşağıda bulabilirsiniz:
** 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 özellikler arasında şunlar yer alır:
Mülk | Açıklama |
---|---|
adNetworkInfoArray |
Reklam yanıtına dahil edilen her bağdaştırıcı için meta veriler içeren GADAdNetworkResponseInfo listesini döndürür. Şelale uyumlulaştırma ve teklifli sistem yürütmesinde hata ayıklamak için kullanılabilir. Listenin sırası, bu reklam isteği için uyumlulaştırma şelalesinin sırasıyla eşleşir.
Daha fazla bilgi için Adaptör Yanıt Bilgileri'ne bakın. |
loadedAdNetworkResponseInfo |
Reklamı yükleyen bağdaştırıcıya karşılık gelen GADAdNetworkResponseInfo değerini döndürür. |
adNetworkClassName |
Reklamı yükleyen reklam ağının uyumlulaştırma bağdaştırıcısı sınıf adını döndürür. |
responseIdentifier |
Yanıt tanımlayıcısı, reklam yanıtının benzersiz tanımlayıcısıdır. Bu tanımlayıcı, reklamı Reklam İnceleme Merkezi'nde (ARC) tanımlamak ve engellemek için kullanılabilir. |
extrasDictionary |
Reklam yanıtı hakkında ek bilgiler döndürür. Ekstralar aşağıdaki anahtarları döndürebilir:
|
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "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"]; }]; }
Adaptör Yanıt Bilgileri
GADAdNetworkResponseInfo
Şelale aracılığı ve teklifli sistem yürütülmesinde hata ayıklamak için kullanılabilecek
reklam yanıtına dahil edilen her bağdaştırıcıyla ilgili meta verileri içerir. Listenin sırası, reklam isteği için uyumlulaştırma şelalesinin sırasıyla eşleşir.
Aşağıda örnek bir GADAdNetworkResponseInfo
çıktısı 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
Her reklam ağı için GADAdNetworkResponseInfo
aşağıdaki özellikleri sağlar:
Mülk | Açıklama |
---|---|
error |
Ağa yapılan istekle ilişkili hata. Ağ bir reklamı başarıyla yüklediyse veya ağ denenmediyse nil değerini döndürür. |
adSourceId |
Bu bağdaştırıcı yanıtıyla ilişkili reklam kaynağı kimliği.
Kampanyalar için, uyumlulaştırılmış reklamlar kampanya hedefi türü için 6060308706800320801 , gösterim ve tıklama hedefi türleri için 7068401028668408324 döndürülür. Bir reklam ağı reklam yayınladığında olası reklam kaynağı kimliklerinin listesi için Reklam kaynakları bölümüne bakın. |
adSourceInstanceId |
Bu bağdaştırıcı yanıtıyla ilişkili reklam kaynağı örneği kimliği. |
adSourceInstanceName |
Bu bağdaştırıcı yanıtıyla ilişkili reklam kaynağı örneğinin adı. |
adSourceName |
Gösterime hizmet veren belirli reklam ağını temsil eden reklam kaynağı. Kampanyalar için,
Mediated House Ads uyumlulaştırılmış reklamlar kampanya hedefi türü için,
Reservation Campaign ise gösterim ve tıklama hedefi türleri için döndürülür. Bir reklam ağı reklam yayınladığında olası reklam kaynağı adlarının listesi için Reklam kaynakları
bölümüne bakın. |
adNetworkClassName |
Reklamı yükleyen reklam ağı bağdaştırıcısının sınıf adı. |
adUnitMapping |
AdMob kullanıcı arayüzünden ayarlanan ağ yapılandırması. |
latency |
Reklam ağının bir reklamı yüklemek için harcadığı süre. Ağ denenmediyse 0 döndürür. |
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "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; }]; }