Iklan native adalah aset iklan yang ditampilkan kepada pengguna melalui komponen UI yang merupakan bagian asli dari platform. View ini ditampilkan menggunakan class yang sama dengan yang sudah Anda gunakan di storyboard, dan dapat diformat agar cocok dengan desain visual aplikasi Anda.
Saat iklan native dimuat, aplikasi Anda akan menerima objek iklan yang berisi asetnya, dan aplikasi—bukan Google Mobile Ads SDK—yang kemudian bertanggung jawab untuk menampilkannya.
Secara umum, ada dua bagian untuk berhasil menerapkan iklan native: Memuat iklan menggunakan SDK, lalu menampilkan konten iklan di aplikasi Anda.
Halaman ini menunjukkan cara menggunakan SDK untuk memuat iklan native.
Prasyarat
- Selesaikan Panduan memulai.
Selalu uji dengan iklan percobaan
Saat mem-build dan menguji aplikasi, pastikan Anda menggunakan iklan percobaan, bukan iklan produksi langsung.
Cara termudah untuk memuat iklan percobaan adalah dengan menggunakan ID unit iklan percobaan khusus kami untuk iklan native di iOS:
/21775744923/example/native
Iklan ini telah dikonfigurasi secara khusus untuk menampilkan iklan pengujian untuk setiap permintaan, dan Anda dapat menggunakannya di aplikasi Anda sendiri saat melakukan coding, pengujian, dan proses debug. Pastikan Anda menggantinya dengan ID unit iklan Anda sendiri sebelum memublikasikan aplikasi.
Untuk informasi selengkapnya tentang cara kerja iklan percobaan Google Mobile Ads SDK, lihat Iklan percobaan.
Memuat iklan
Iklan native dimuat dengan
class
GADAdLoader
, yang mengirim pesan ke delegasinya sesuai dengan
protokol
GADAdLoaderDelegate
.
Selain format native yang ditentukan sistem, Anda juga dapat membuat
format iklan native kustom
Anda sendiri yang dapat digunakan untuk iklan native yang dijual langsung. Format iklan native kustom memungkinkan Anda
meneruskan data terstruktur arbitrer ke aplikasi. Iklan ini diwakili oleh
class GADCustomNativeAd
.
Melakukan inisialisasi loader iklan
Sebelum dapat memuat iklan, Anda harus melakukan inisialisasi pada loader iklan.
Kode berikut menunjukkan cara menginisialisasi GADAdLoader
:
Swift
adLoader = GADAdLoader(adUnitID: "/21775744923/example/native",
// The UIViewController parameter is optional.
rootViewController: rootViewController,
adTypes: [ .native ],
options: [ ... ad loader options objects ... ])
adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"/21775744923/example/native"
// The UIViewController parameter is nullable.
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;
Anda memerlukan ID unit iklan (Anda dapat menggunakan ID pengujian), konstanta untuk meneruskan
array adTypes
guna menentukan format native yang ingin diminta, dan
opsi apa pun yang ingin ditetapkan dalam parameter options
. Daftar kemungkinan
nilai untuk parameter options
dapat ditemukan di halaman Menetapkan Opsi
Iklan Native.
Array adTypes
harus berisi satu atau beberapa konstanta berikut:
Mengimplementasikan delegasi loader iklan
Delegasi pemuat iklan perlu menerapkan protokol khusus untuk jenis iklan Anda.
Untuk iklan native, protokol GADNativeAdLoaderDelegate
menyertakan pesan
yang dikirim ke delegasi saat iklan native dimuat.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd;
Protokol GADCustomNativeAdLoaderDelegate
menyertakan pesan yang dikirim ke
delegasi saat iklan template kustom telah dimuat.
Swift
func adLoader(_ adLoader: GADAdLoader,
Receive customNativeAd: GADCustomNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;
Permintaan iklan
Setelah GADAdLoader
diinisialisasi, panggil metode loadRequest:
-nya untuk
meminta iklan:
Swift
adLoader.load(GAMRequest())
Objective-C
[self.adLoader loadRequest:[GAMRequest request]];
Metode
loadRequest:
di
GADAdLoader
menerima objek
GAMRequest
yang sama seperti banner dan interstisial. Anda dapat menggunakan objek permintaan untuk menambahkan
informasi penargetan, sama seperti
yang Anda lakukan dengan jenis iklan lainnya.
Menentukan kapan pemuatan selesai
Setelah aplikasi memanggil loadRequest:
, aplikasi dapat mendapatkan hasil permintaan menggunakan
panggilan ke:
adLoader:didFailToReceiveAdWithError:
dalamGADAdLoaderDelegate
adLoader:didReceiveNativeAd:
dalamGADNativeAdLoaderDelegate
Permintaan untuk satu iklan akan menghasilkan satu panggilan ke salah satu metode tersebut.
Menangani permintaan yang gagal
Protokol di atas memperluas protokol GADAdLoaderDelegate
, yang menentukan
pesan yang dikirim saat iklan gagal dimuat.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didFailToReceiveAdWithError error: NSError)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didFailToReceiveAdWithError:(NSError *)error;
Mendapatkan notifikasi peristiwa iklan native
Agar mendapatkan notifikasi peristiwa yang terkait dengan interaksi iklan native, tetapkan properti delegasi iklan native:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
Kemudian, implementasikan
GADNativeAdDelegate
untuk menerima panggilan delegasi berikut:
Swift
func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
// The native ad was shown.
}
func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
// The native ad was clicked on.
}
func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
// The native ad will present a full screen view.
}
func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad will dismiss a full screen view.
}
func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad did dismiss a full screen view.
}
func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
// The native ad will cause the app to become inactive and
// open a new app.
}
Objective-C
- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
// The native ad was shown.
}
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
// The native ad was clicked on.
}
- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
// The native ad will present a full screen view.
}
- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
// The native ad will dismiss a full screen view.
}
- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
// The native ad did dismiss a full screen view.
}
- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
// The native ad will cause the app to become inactive and
// open a new app.
}
Praktik terbaik
Ikuti aturan ini saat memuat iklan.
Aplikasi yang menggunakan iklan native dalam daftar harus melakukan pra-cache daftar iklan.
Saat melakukan pra-caching iklan, hapus cache dan muat ulang setelah satu jam.
Jangan panggil
loadRequest:
lagi diGADAdLoader
hingga permintaan sebelumnya selesai dimuat, seperti yang ditunjukkan olehadLoaderDidFinishLoading:
.Batasi penyimpanan dalam cache iklan native hanya untuk yang diperlukan. Misalnya, saat melakukan pra-cache, hanya cache iklan yang langsung terlihat di layar. Iklan native memiliki jejak memori yang besar, dan meng-cache iklan native tanpa menghancurkannya akan menyebabkan penggunaan memori yang berlebihan.
Menghancurkan iklan native saat tidak lagi digunakan.
Menampilkan iklan
Setelah memuat iklan, Anda hanya perlu menampilkannya kepada pengguna. Buka panduan Native Advanced untuk mengetahui caranya.