Dengan beberapa perubahan pada kode, Anda dapat menggabungkan iklan native dan banner dalam permintaan iklan.
Prasyarat
- Google Mobile Ads SDK versi 7.20.0 atau yang lebih tinggi
- Selesaikan panduan Mulai
Memuat iklan
Iklan native yang dirender kustom dimuat melalui
GADAdLoader
objek. Objek GADAdLoader
juga dapat dikonfigurasi untuk membuat permintaan iklan
yang dapat menghasilkan iklan banner atau native. Menambahkan
GADAdLoaderAdTypeGAMBanner
ke parameter array adTypes
, bersama dengan
jenis iklan native seperti GADAdLoaderAdTypeNative
saat membuat objek
GADAdLoader
menentukan bahwa iklan banner harus bersaing dengan iklan native
untuk memenuhi permintaan.
Swift
adLoader = GADAdLoader(adUnitID: "/21775744923/example/native-and-banner", rootViewController: self, adTypes: [.native, .gamBanner], options: [... ad loader options objects ...]) adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native-and-banner" rootViewController:rootViewController adTypes:@[ GADAdLoaderAdTypeNative, GADAdLoaderAdTypeGAMBanner ] options:@[ ... ad loader options objects ... ]]; self.adLoader.delegate = self;
GAMBannerAdLoaderDelegate
Saat meminta iklan banner melalui GADAdLoader
, delegasi pemuat iklan harus mematuhi protokol GAMBannerAdLoaderDelegate
. Protokol ini mencakup pesan yang dikirim saat iklan banner telah dimuat:
Swift
public func adLoader(_ adLoader: GADAdLoader, didReceive GAMBannerView: GAMBannerView)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader didReceiveGAMBannerView:(GAMBannerView *)bannerView;
Delegasi pemuat iklan juga harus menentukan ukuran iklan banner yang harus
diminta dengan merespons pesan validBannerSizesForAdLoader
seperti yang ditunjukkan
di bawah.
Swift
public func validBannerSizes(for adLoader: GADAdLoader) -> [NSValue] { return [NSValueFromGADAdSize(GADAdSizeBanner), NSValueFromGADAdSize(GADAdSizeMediumRectangle), NSValueFromGADAdSize(GADAdSizeFromCGSize(CGSize(width: 120, height: 20)))] }
Objective-C
- (NSArray*)validBannerSizesForAdLoader:(GADAdLoader *)adLoader { return @[ @(GADAdSizeBanner), @(GADAdSizeMediumRectangle), @(GADAdSizeFromCGSize(CGSizeMake(120, 20))) ]; }
Penghitungan tayangan manual
Untuk mengaktifkan penghitungan tayangan manual pada iklan banner yang dimuat melalui GADAdLoader
, tetapkan
GAMBannerViewOptions
dengan enableManualImpressions
ditetapkan ke YES
saat melakukan inisialisasi GADAdLoader
.
Swift
let bannerViewOptions = GAMBannerViewOptions() bannerViewOptions.enableManualImpressions = true adLoader = GADAdLoader( adUnitID: "/21775744923/example/native-and-banner", rootViewController: self, adTypes: [.native, .gamBanner], options: [bannerViewOptions])
Objective-C
GAMBannerViewOptions *bannerViewOptions = [[GAMBannerViewOptions alloc] init]; bannerViewOptions.enableManualImpressions = YES; self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native-and-banner" rootViewController:self adTypes:@[ GADAdLoaderAdTypeNative, GADAdLoaderAdTypeGAMBanner ] options:@[ bannerViewOptions ]];
Jika iklan banner dimuat, Anda dapat memanggil recordManualImpression
saat Anda
menentukan bahwa iklan telah berhasil ditampilkan dan berada di layar untuk
menembakkan tayangan iklan secara manual:
Swift
bannerView.recordImpression()
Objective-C
[self.bannerView recordImpression];