Untuk tujuan proses debug dan logging, iklan yang berhasil dimuat menyediakan a
GADResponseInfo
objek. Objek ini berisi informasi tentang iklan yang dimuat, selain informasi tentang waterfall mediasi yang digunakan untuk memuat iklan.
Untuk kasus saat iklan berhasil dimuat, objek iklan memiliki properti GADResponseInfo. Misalnya,
GADInterstitialAd.responseInfo
mendapatkan info respons untuk iklan interstisial yang dimuat.
Untuk kasus saat iklan gagal dimuat dan hanya error yang tersedia, GADResponseInfo tersedia menggunakan kunci GADErrorUserInfoKeyResponseInfo pada kamus userInfo error.
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/21775744923/example/interstitial", 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:@"/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); }]; }
Info respons
Berikut adalah contoh output yang menampilkan data proses debug yang ditampilkan untuk iklan yang dimuat:
** 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 **
{
"creative_id" = "138471856178";
"line_item_id" = "6707237225";
}
** 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
Properti di GADResponseInfo
mencakup:
| Properti | Deskripsi |
|---|---|
adNetworkInfoArray |
Menampilkan daftar GADAdNetworkResponseInfo
yang berisi metadata untuk setiap adaptor yang disertakan dalam respons iklan. Dapat digunakan untuk men-debug eksekusi mediasi waterfall dan bidding. Urutan
daftar cocok dengan urutan waterfall mediasi untuk permintaan iklan ini.
Lihat Info Respons Adaptor untuk mengetahui informasi selengkapnya. |
loadedAdNetworkResponseInfo |
Menampilkan GADAdNetworkResponseInfo yang sesuai dengan adaptor
yang memuat iklan. |
adNetworkClassName |
Menampilkan nama class adaptor mediasi dari jaringan iklan yang memuat iklan. |
responseIdentifier |
ID respons adalah ID unik untuk respons iklan. ID ini dapat digunakan untuk mengidentifikasi dan memblokir iklan di Pusat Peninjauan Iklan (ARC). |
extrasDictionary |
Menampilkan informasi tambahan tentang respons iklan. Tambahan dapat menampilkan
kunci berikut:
|
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/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 let creativeID = responseInfo?.extrasDictionary["creative_id"] let lineItemID = responseInfo?.extrasDictionary["line_item_id"] } }
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; NSString *creativeID = responseInfo.extrasDictionary[@"creative_id"]; NSString *lineItemID = responseInfo.extrasDictionary[@"line_item_id"]; }]; }
Info Respons Adaptor
GADAdNetworkResponseInfo
berisi metadata untuk setiap adaptor yang disertakan dalam respons iklan yang dapat digunakan untuk men-debug eksekusi mediasi waterfall dan bidding. Urutan daftar cocok dengan urutan waterfall mediasi untuk permintaan iklan.
Berikut adalah contoh output 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
Untuk setiap jaringan iklan, GADAdNetworkResponseInfo menyediakan properti berikut:
| Properti | Deskripsi |
|---|---|
error |
Error yang terkait dengan permintaan ke jaringan. Menampilkan
nil jika jaringan berhasil memuat iklan atau jika jaringan
tidak dicoba. |
adSourceId |
ID sumber iklan yang terkait dengan respons adaptor ini. |
adSourceInstanceId |
ID instance sumber iklan yang terkait dengan respons adaptor ini. |
adSourceInstanceName |
Nama instance sumber iklan yang terkait dengan respons adaptor ini. Menampilkan string kosong jika tidak diisi oleh grup hasil. |
adSourceName |
Sumber iklan yang mewakili jaringan iklan tertentu yang menayangkan tayangan. |
adNetworkClassName |
Nama class adaptor jaringan iklan yang memuat iklan. |
adUnitMapping |
Setelan konfigurasi jaringan dari UI Ad Manager. |
latency |
Jumlah waktu yang dihabiskan jaringan iklan untuk memuat iklan. Menampilkan
0 jika jaringan tidak dicoba. |
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/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; }]; }