Gli annunci nativi sono asset annuncio presentati agli utenti tramite componenti UI nativi della piattaforma. Vengono mostrati con gli stessi corsi che usi già nei tuoi storyboard e possono essere formattati in base al design visivo della tua app.
Quando un annuncio nativo viene caricato, l'app riceve un oggetto annuncio che contiene i suoi asset e l'app, invece dell'SDK Google Mobile Ads, è responsabile della visualizzazione degli annunci.
In generale, l'implementazione corretta degli annunci nativi si compone di due parti: Caricare un annuncio utilizzando l'SDK e poi visualizzare il contenuto dell'annuncio nell'app.
Questa pagina mostra come utilizzare l'SDK per caricare gli annunci nativi.
Prerequisiti
- Completa la Guida introduttiva.
Effettua sempre test con annunci di prova
Quando crei e testi le tue app, assicurati di utilizzare annunci di prova anziché annunci di produzione pubblicati.
Il modo più semplice per caricare annunci di prova è utilizzare il nostro ID unità pubblicitaria di prova dedicato per gli annunci nativi su iOS:
/6499/example/native
È stato appositamente configurato per restituire annunci di prova per ogni richiesta e puoi utilizzarlo nelle tue app durante la programmazione, i test e il debug. Assicurati solo di sostituirlo con il tuo ID unità pubblicitaria prima di pubblicare l'app.
Per saperne di più sul funzionamento degli annunci di prova dell'SDK Google Mobile Ads, consulta la pagina Annunci di prova.
Carica annunci
Gli annunci nativi vengono caricati con la classe GADAdLoader
, che invia messaggi ai propri delegati in base al protocollo GADAdLoaderDelegate
.
Oltre al formato nativo definito dal sistema, puoi anche creare formati di annunci nativi personalizzati da utilizzare per annunci nativi venduti direttamente. I formati di annunci nativi personalizzati ti consentono di passare dati strutturati arbitrari alla tua app. Questi annunci sono rappresentati dalla classe GADCustomNativeAd
.
Inizializzare il caricatore di annunci
Prima di poter caricare un annuncio, devi inizializzare il caricatore degli annunci.
Il seguente codice mostra come inizializzare un GADAdLoader
:
Swift
adLoader = GADAdLoader(adUnitID: "/6499/example/native",
rootViewController: self,
adTypes: [ .native ],
options: [ ... ad loader options objects ... ])
adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"/6499/example/native"
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;
Avrai bisogno di un ID unità pubblicitaria (puoi utilizzare l'ID test), delle costanti da passare nell'array adTypes
per specificare i formati nativi da richiedere e le eventuali opzioni da impostare nel parametro options
. L'elenco dei possibili valori per il parametro options
è disponibile nella pagina Impostazione delle opzioni per gli annunci nativi.
L'array adTypes
deve contenere una o più delle seguenti costanti
:
Implementare il delegato del caricatore annunci
Il delegato del caricatore degli annunci deve implementare protocolli specifici per il tuo tipo di annuncio.
Per gli annunci nativi, il protocollo GADNativeAdLoaderDelegate
include un messaggio che viene inviato al delegato dopo il caricamento di un annuncio nativo.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd;
Il protocollo GADCustomNativeAdLoaderDelegate
include un messaggio inviato al delegato
quando è stato caricato un annuncio modello personalizzato.
Swift
func adLoader(_ adLoader: GADAdLoader,
Receive customNativeAd: GADCustomNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;
Richiedi annunci
Dopo aver inizializzato GADAdLoader
, chiama il metodo loadRequest:
per
richiedere un annuncio:
Swift
adLoader.load(GAMRequest())
Objective-C
[self.adLoader loadRequest:[GAMRequest request]];
Il metodo loadRequest:
in GADAdLoader
accetta gli stessi oggetti GAMRequest
dei banner e degli interstitial. Puoi utilizzare gli oggetti di richiesta per aggiungere informazioni sul targeting, proprio come faresti con altri tipi di annunci.
Determinazione del termine del caricamento
Dopo che un'app chiama loadRequest:
, può ricevere i risultati della richiesta utilizzando
chiamate a:
adLoader:didFailToReceiveAdWithError:
traGADAdLoaderDelegate
adLoader:didReceiveNativeAd:
traGADNativeAdLoaderDelegate
La richiesta di un singolo annuncio comporterà una chiamata a uno di questi metodi.
Gestione delle richieste non riuscite
I protocolli sopra riportati estendono il protocollo GADAdLoaderDelegate
, che definisce un messaggio inviato quando non viene caricato un annuncio.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didFailToReceiveAdWithError error: NSError)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didFailToReceiveAdWithError:(NSError *)error;
Ricevere notifiche sugli eventi relativi agli annunci nativi
Per ricevere notifiche sugli eventi relativi alle interazioni con l'annuncio nativo, imposta la proprietà delegato dell'annuncio nativo:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
Poi implementa GADNativeAdDelegate
per ricevere le seguenti chiamate delegati:
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.
}
Best practice
Segui queste regole durante il caricamento degli annunci.
Le app che utilizzano annunci nativi in un elenco dovrebbero prememorizzare nella cache l'elenco di annunci.
Quando esegui la pre-memorizzazione degli annunci nella cache, svuota la cache e ricarica la pagina dopo un'ora.
Non chiamare più
loadRequest:
suGADAdLoader
fino al termine del caricamento della richiesta precedente, come indicato daadLoaderDidFinishLoading:
.
Mostra il tuo annuncio
Una volta caricato un annuncio, è sufficiente mostrarlo agli utenti. Consulta la nostra guida Native Advanced per scoprire come.