Google Mobile Ads SDK juga mendukung gaya penelusuran kustom. Jika aplikasi Anda sudah menggunakan Google Mobile Ads SDK, sebaiknya gunakan Versi AFSMA SDK sebagai gantinya.
Prasyarat
- Menggunakan Xcode 8.0 atau yang lebih baru
- Menargetkan iOS 8.0 atau yang lebih tinggi
- Kode properti web penayang yang valid (misalnya, vert-ppa-test1-srp)
- CocoaPods
Mengimpor AFS Native SDK
CocoaPods
Impor Google-AFSNative SDK ke project iOS menggunakan CocoaPods. Buka Podfile dan tambahkan baris ini ke target aplikasi Anda:
pod 'Google-AFSNative'
Kemudian dari command line, jalankan:
pod install --repo-update
Jika Anda baru menggunakan CocoaPods, lihat dokumentasi resmi untuk info tentang cara membuat dan menggunakan Podfile.
Ringkasan
Jika Anda meningkatkan ke versi 4.0 atau yang lebih baru dari 2.0.8 atau yang lebih lama, lihat panduan migrasi kami.
Dokumen ini berisi penjelasan mengenai proses mengintegrasikan iklan Native AFS di aplikasi seluler iOS Anda.
- Konstruktor
GANSearchAdController
harus menyediakan kode properti web penayang, ID setelan yang diinginkan, dan ID ObjekGANSearchAdControllerOptions
. - Setiap panggilan ke
loadAds()
menunjukkan penelusuran baru, dan akan menyebabkan sekumpulan iklan yang akan dibuang dan dibatalkan validasinya. - Materi iklan disimpan di
GANAdView
. - Iklan disisipkan ke dalam iklan
GANAdView
dengan metodepopulateAdView
. Di beberapa selainGANAdView
yang akan diisi, pemanggil menyediakanadIdentifier
, yang merupakan string arbitrer yang akan mengidentifikasi iklan secara unik. Di dalam API, iklan tertentu ditetapkan ke setiap adIdentifier yang diteruskan inc. Kemudian, setiap kali adKey tersebut diteruskan lagi di masa mendatang, iklan yang sama akan dikembalikan. Misalnya, jikapopulateAdView
dipanggil untuk pertama kalinya dengan adIdentifier "keyA", setiap panggilan berikutnya kepopulateAdView
saat meneruskan "kunciA" karenaadIdentifier
akan menyebabkan iklan yang sama ditampilkan.
- Ini adalah UIView yang berisi materi iklan.
- Isi tampilan ini dengan iklan menggunakan metode
populateAdView
diGANSearchAdController
.
- Teruskan objek ini ke konstruktor
GANSearchAdController
untuk menentukan perilaku terkait cara iklan diminta dan ditampilkan.
- Panggil metode
loadAds
pada instanceGANSearchAdController
dengan metode ini untuk membuat permintaan iklan.
- Terapkan antarmuka ini dan berikan ke
GANSearchAdController
untuk mendaftarkan callback untuk beberapa status.
Contoh implementasi
Contoh di bawah menunjukkan pembuatan GANSearchAdController
dan GANView
untuk menampilkan iklan dalam contoh ViewController
.
// SampleAppViewController.m implementation
#import <AFSNative/AFSNative.h>
@interface GBannerViewController () {
// The Ad Controller used by the sample application.
GANSearchAdController *_adController;
// The Ad View to display the loaded ad.
GANAdView *_adView;
}
// scrollView will be where we place our ads in this example.
@property(nonatomic, strong) UIScrollView *scrollView;
@end
...
- (void)viewDidLoad {
[super viewDidLoad];
// Create the scroll view.
...
[self.view addSubview:scrollView];
// Create a test button and link the ad request to its action.
UIButton *loadBannerButton = [UIButton buttonWithType:UIButtonTypeCustom];
...
[loadBannerButton addTarget:self
action:@selector(loadAd:)
forControlEvents:UIControlEventTouchUpInside];
[self.scrollView addSubview:loadBannerButton];
// Construct the Ad Controller.
GANSearchAdControllerOptions *options = [[GANSearchAdControllerOptions alloc] init];
options.prefetchEnabled = YES;
options.adType = GANSearchAdTypeSPA;
options.adFetchCount = 3;
_adController = [[GANSearchAdController alloc]
initWithPublisherID: @"your-client-id"
styleID: @"your-settings-id"
options: options
delegate: self];
_adView = [_adController adView];
[self.scrollView addSubview:_adView];
}
// Request ads when the test button is pressed.
- (void)loadAd:(id)sender {
// Construct the Ad Request.
GANSearchAdRequest *adRequest = [[GANSearchAdRequest alloc] init];
adRequest.query = @"some-query";
// Start loading ads. Note that the loading is asynchronous.
[_adController loadAds: adRequest];
}
// Insert ads into GANAdView if the request returns successfully.
- (void)searchAdController:(GANSearchAdController *)adController
didLoadAds:(NSInteger)numberOfAds {
if (numberOfAds <= 0) {
NSLog(@"No ads found on the server");
} else {
[_adController populateAdView:_adView identifier:@"demoAd"];
}
}
...