Untuk tujuan proses debug dan logging, iklan yang berhasil dimuat akan memberikan objek GADResponseInfo
. Objek ini berisi informasi tentang iklan yang dimuatnya, selain informasi tentang waterfall mediasi yang digunakan untuk memuat iklan.
Jika 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
akan tersedia menggunakan kunci GADErrorUserInfoKeyResponseInfo
di kamus userInfo
error.
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); }]; }
Info respons
Berikut contoh output yang menampilkan data proses debug yang ditampilkan untuk iklan yang dimuat:
( ** 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
)
Properti di GADResponseInfo
mencakup:
Properti | Deskripsi |
---|---|
adNetworkInfoArray |
Menampilkan daftar GADAdNetworkResponseInfo
yang berisi metadata untuk setiap adaptor yang disertakan dalam respons iklan. Dapat digunakan untuk melakukan debug pada mediasi waterfall dan eksekusi bidding. Urutan daftar cocok dengan urutan waterfall mediasi untuk permintaan iklan ini.
Lihat Info Respons Adaptor untuk informasi selengkapnya. |
loadedAdNetworkResponseInfo |
Menampilkan GADAdNetworkResponseInfo yang sesuai dengan adaptor yang memuat iklan. |
adNetworkClassName |
Menampilkan nama class adaptor mediasi 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() { 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"]; }]; }
Info Respons Adaptor
GADAdNetworkResponseInfo
berisi metadata untuk setiap adaptor yang disertakan dalam respons iklan yang dapat digunakan
untuk men-debug mediasi waterfall dan eksekusi bidding. Urutan daftar
cocok dengan urutan waterfall mediasi untuk permintaan iklan.
Berikut adalah contoh output GADAdNetworkResponseInfo
:
( 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
)
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.
Untuk kampanye, 6060308706800320801 ditampilkan untuk
jenis sasaran kampanye iklan yang dimediasi,
dan 7068401028668408324 ditampilkan untuk jenis sasaran klik dan
tayangan. Lihat Sumber iklan
untuk daftar kemungkinan ID sumber iklan saat jaringan iklan menayangkan iklan. |
adSourceInstanceId |
ID instance sumber iklan yang terkait dengan respons adaptor ini. |
adSourceInstanceName |
Nama instance sumber iklan yang terkait dengan respons adaptor ini. |
adSourceName |
Sumber iklan yang merepresentasikan jaringan iklan tertentu yang menayangkan
tayangan. Untuk kampanye,
Mediated House Ads ditampilkan untuk jenis sasaran kampanye
iklan yang dimediasi,
dan Reservation Campaign ditampilkan untuk jenis sasaran klik dan
tayangan. Lihat Sumber iklan
untuk daftar kemungkinan nama sumber iklan saat jaringan iklan menayangkan
iklan. |
adNetworkClassName |
Nama kelas adaptor jaringan iklan yang memuat iklan. |
adUnitMapping |
Konfigurasi jaringan yang disetel dari UI AdMob . |
latency |
Jumlah waktu yang dihabiskan jaringan iklan untuk memuat iklan. Menampilkan
0 jika jaringan tidak dicoba. |
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; }]; }