Prasyarat
Panduan penerapan ini mengasumsikan bahwa Anda sudah memahami hal berikut:
- Pengembangan aplikasi iOS.
- Mengaitkan Google Mobile Ads SDK dengan project iOS. Download SDK versi terbaru.
Ringkasan
Dokumen ini menguraikan proses untuk mengintegrasikan iklan AFS untuk Aplikasi Seluler (AFSMA) di aplikasi seluler iOS Anda. Iklan AFSMA terkadang juga disebut sebagai iklan dinamis iklan penelusuran tinggi. Untuk meminta dan merender iklan AFSMA di iOS, Anda harus terapkan hal berikut:
- Class ini mewarisi dari class UIView iOS dan menampilkan iklan AFSMA. Tujuan
GADSearchBannerView
membuat permintaan untuk iklan denganGADDynamicHeightSearchRequest
, lalu merender iklan yang ditampilkan. TujuanGADSearchBannerView
harus ditambahkan ke salah satu tampilan aplikasi yang ada; biasanya itu adalah pengontrol tampilan induk yang menyimpan tampilan yangGADSearchBannerView
telah ditambahkan. Penerima delegasi yang sesuai harus ditetapkan diGADSearchBannerView
. GADSearchBannerView
harus dibuat instance-nya denganinitWithAdSize:kGADAdSizeFluid
untuk meminta iklan AFSMA. Membuat instanceGADSearchBannerView
denganinitWithAdSize:kGADAdSizeBanner
permintaan AFSMA lama iklan.- Properti
adUnitID
di objek ini harus disetel ke kode properti Anda.
- Objek ini merangkum parameter permintaan iklan. Hal ini setara dengan parameter setelan di objek permintaan iklan JavaScript (opsi halaman, unit untuk web seluler dan desktop AFS.
(void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)size
- Callback ini dipanggil saat permintaan iklan ditampilkan. Karena iklan yang ditampilkan
dapat berisi sejumlah iklan dengan ekstensi yang berbeda, ukuran yang tepat
unit iklan tidak diketahui saat permintaan iklan dibuat. Setelah iklan
dikembalikan, tampilan spanduk perlu diperbarui untuk mengakomodasi ukuran baru
unit iklan. Kode untuk mengubah ukuran
GADSearchBannerView
di tampilan induknya harus akan diterapkan di sini.
Contoh implementasi
Contoh di bawah menunjukkan penggunaan GBannerViewController
untuk membuat
GADSearchBannerView
sebagai subtampilan dari UIScrollView
. Untuk meminta AFSMA dengan benar
sebelumnya, objek GADSearchBannerView
harus dibuat instance-nya dengan
initWithAdSize:kGADAdSizeFluid
.
// GBannerViewController.m implementation
@interface GBannerViewController () <GADAdSizeDelegate,
GADBannerViewDelegate>
@property(nonatomic, strong) GADSearchBannerView *searchBannerView;
@property(nonatomic, strong) UIScrollView *scrollView;
@end
@implementation GBannerViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Create the scroll view.
....
....
// Create the banner.
self.searchBannerView = [[GADSearchBannerView alloc] initWithAdSize:kGADAdSizeFluid];
// Replace with your pub ID (e.g. ms-app-pub-9616389000213823).
self.searchBannerView.adUnitID = @"ms-app-pub-################";
// Set the initial location and size of the banner. The initial height
// is set to 0 since we might not get an ad back.
self.searchBannerView.frame = CGRectMake(0,
0,
CGRectGetWidth(self.view.bounds),
0);
self.searchBannerView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
// Set the delegate properties.
self.searchBannerView.adSizeDelegate = self;
self.searchBannerView.delegate = self;
// Add the new search banner into the parent scrollView.
[self.scrollView addSubview:self.searchBannerView];
}
Dalam GBannerViewController
yang sama, buat GADDynamicHeightSearchRequest
yang menentukan parameter iklan yang akan dirender di GADSearchView
.
// Create a search request and load the banner. GADDynamicHeightSearchRequest *searchRequest = [[GADDynamicHeightSearchRequest alloc] init]; // Ad request options (set using GADDynamicHeightSearchRequest properties). searchRequest.query = @"flowers"; searchRequest.numberOfAds = 2; // Replace with the ID of a style from your custom search styles [searchRequest setAdvancedOptionValue:@"0000000001" forKey:@"styleId"];
Opsi penyesuaian lainnya
bisa dilakukan dengan menetapkan properti tambahan pada GADDynamicHeightSearchRequest
.
Untuk membuat permintaan iklan, panggil loadRequest
dengan GADDynamicHeightSearchRequest
dari objek GADSearchBannerView
:
[self.searchBannerView loadRequest:searchRequest];
Agar tampilan induk mengakomodasi GADSearchBannerView
dengan benar
tidak ditampilkan, callback berikut harus diterapkan.
// Callback to update the parent view height.
- (void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)size {
// Update the banner view based on the ad size.
CGRect newFrame = self.searchBannerView.frame;
newFrame.size.height = size.size.height;
self.searchBannerView.frame = newFrame;
// Perform any additional logic needed due to banner view size change.
...
}
Opsi lanjutan
Sebagian besar parameter permintaan iklan dapat ditetapkan melalui properti di
Objek GADDynamicHeightSearchRequest
(searchRequest
di atas). Parameter lainnya
harus ditetapkan menggunakan key-value pair dengan setAdvancedOptionValue
berikut:
// Advanced customization options (set using key-value pair).
// Set a parameter (parameter_name) and its value (parameter_value).
[searchRequest setAdvancedOptionValue:@"parameter_value"
forKey:@"parameter_name"];
// Example: Show visible URL below description (domainLinkAboveDescription: false).
[searchRequest setAdvancedOptionValue:@"false"
forKey:@"domainLinkAboveDescription"];
Lihat daftar lengkap parameter yang tersedia.
Menyelidiki error
GADBannerViewDelegate
berisi callback untuk membantu Anda menyelidiki error:
- (void)adView:(GADBannerView *)bannerView didFailToReceiveAdWithError:(GADRequestError *)error {
// This callback is triggered when the ad request fails.
// Add code here to debug the error object to discover causes of failure
NSLog(@"Ad call failed due to %@", error.userInfo[@"NSUnderlyingError"]);
}
Jika permintaan iklan gagal, Anda dapat menggunakan callback ini untuk menangani error dengan benar dan menyelidiki {i>error<i} melalui objek {i>error<i}.