L'SDK Google Mobile Ads supporta anche gli stili di ricerca personalizzati. Se la tua app utilizza già l'SDK Google Mobile Ads, ti consigliamo di utilizzare Versione dell'SDK AFSMA .
Prerequisiti
- Utilizzare Xcode 8.0 o versioni successive
- Scegli come target iOS 8.0 o versioni successive
- Un codice proprietà web del publisher valido (ad es. vert-ppa-test1-srp)
- CocoaPods
Importa l'SDK nativo AFS
CocoaPods
Importare l'SDK Google-AFS Native in un progetto iOS utilizzando CocoaPods. Apri la finestra di dialogo del progetto Podfile e aggiungi questa riga al target dell'app:
pod 'Google-AFSNative'
Quindi, dalla riga di comando esegui:
pod install --repo-update
Se non hai mai utilizzato CocoaPods, consulta le relative documentazione ufficiale per informazioni sulla creazione e sull'uso dei podfile.
Panoramica
Se esegui l'aggiornamento alla versione 4.0 o successiva dalla 2.0.8 o precedente, vedi la nostra guida alla migrazione.
Questo documento illustra la procedura per integrare gli annunci nativi AFS nell'app mobile iOS.
- Al costruttore
GANSearchAdController
deve essere fornito codice proprietà web del publisher, ID impostazioni desiderato e associato OggettoGANSearchAdControllerOptions
. - Ogni chiamata a
loadAds()
indica una nuova ricerca e causerà di annunci da ignorare e invalidare. - Le creatività degli annunci sono memorizzate in
GANAdView
. - Gli annunci vengono inseriti nell'annuncio
GANAdView
con il metodopopulateAdView
. Nella oltre aGANAdView
che deve essere compilato, il chiamante fornisce unadIdentifier
, una stringa arbitraria che deve identificare l'annuncio in modo univoco. All'interno dell'API, a ogni adIdentifier viene assegnato un annuncio specifico in. Poi, ogni volta che questa adKey viene passata nuovamente in futuro, lo stesso annuncio verrà restituito. Ad esempio, sepopulateAdView
viene chiamato per la prima volta con adIdentifier "keyA", ogni chiamata successiva apopulateAdView
durante la trasmissione "chiaveA" perchéadIdentifier
comporterà la visualizzazione dello stesso annuncio.
- Si tratta della UIView che contiene la creatività dell'annuncio.
- Compila questa visualizzazione con un annuncio utilizzando il metodo
populateAdView
nellaGANSearchAdController
.
- Passa questo oggetto al costruttore
GANSearchAdController
per specificare comportamento di come vengono richiesti e visualizzati gli annunci.
- Chiama il metodo
loadAds
sull'istanzaGANSearchAdController
con questo per effettuare una richiesta di annuncio.
- Implementa questa interfaccia e forniscila al
GANSearchAdController
per per registrare i callback per diversi stati.
Esempio di implementazione
L'esempio seguente mostra la creazione di un GANSearchAdController
e di un GANView
per mostrare un annuncio in un ViewController
di esempio.
// 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"];
}
}
...