Gli annunci nativi dispongono di molte funzionalità avanzate che ti consentono di apportare personalizzazioni aggiuntive e offrire la migliore esperienza pubblicitaria possibile. Questa guida illustra come utilizzare le funzionalità avanzate degli annunci nativi.
Prerequisiti
- Integra il formato dell'annuncio nativo.
Controlli degli asset
Controlli delle proporzioni dei contenuti multimediali preferiti
I controlli delle proporzioni dei contenuti multimediali ti consentono di specificare una preferenza per le proporzioni delle creatività pubblicitarie.
Imposta GADNativeAdMediaAdLoaderOptions mediaAspectRatio
con un GADMediaAspectRatio
.
Se non viene impostato, l'annuncio restituito può avere qualsiasi formato video.
Una volta impostato, potrai migliorare l'esperienza utente specificando il tipo di formato preferito.
L'esempio seguente indica all'SDK di preferire un'immagine o un video con proporzioni specifiche.
GADNativeAdMediaAdLoaderOptions *nativeOption = [[GADNativeAdMediaAdLoaderOptions alloc] init];
nativeOption.mediaAspectRatio = GADMediaAspectRatioAny;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
Controllo del download delle immagini
Il controllo del download delle immagini ti consente di decidere se l'SDK deve restituire asset immagine o solo URI.
ImpostaGADNativeAdImageAdLoaderOptions disableImageLoading
con un valore BOOL
.
Il controllo del download delle immagini è disattivato per impostazione predefinita.
Se questa opzione è disattivata, l'SDK Google Mobile Ads compila sia l'immagine sia l'URI per te.
Se questa opzione è attivata, l'SDK compila solo l'URI, consentendoti di scaricare le immagini effettive a tua discrezione.
Il seguente esempio indica all'SDK di restituire solo l'URI.
GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.disableImageLoading = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
Controlli del payload delle immagini
Alcuni annunci contengono una serie di immagini anziché una sola. Utilizza questa funzionalità per indicare se la tua app è pronta a mostrare tutte le immagini o solo una.
ImpostaGADNativeAdImageAdLoaderOptions shouldRequestMultipleImages
con un valore BOOL
.
I controlli del payload delle immagini sono disattivati per impostazione predefinita.
Se questa opzione è disattivata, l'app indica all'SDK di fornire solo la prima immagine per gli asset che contengono una serie.
Se questa opzione è attivata, l'app indica che è pronta a visualizzare tutte le immagini per gli asset che ne hanno più di una.
L'esempio seguente indica all'SDK di restituire più asset immagine.
GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.shouldRequestMultipleImages = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
Posizionamenti Scegli Tu!
Controlli della posizione di Scegli Tu!
I controlli della posizione di Scegli Tu! ti consentono di scegliere in quale angolo visualizzare l'icona Scegli Tu!.
Imposta GADNativeAdViewAdOptions preferredAdChoicesPosition
con un valore GADAdChoicesPosition
.
Se non è impostato, la posizione dell'icona Scegli Tu! è impostata in alto a destra.
Se impostato, AdChoices viene posizionato nella posizione personalizzata richiesta.
L'esempio seguente mostra come impostare una posizione dell'immagine AdChoices personalizzata.
GADNativeAdViewAdOptions *nativeOptions = [[GADNativeAdViewAdOptions alloc] init];
nativeOptions.preferredAdChoicesPosition = GADAdChoicesPositionTopLeftCorner;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
Visualizzazione personalizzata di Scegli Tu!
La funzionalità di visualizzazione personalizzata di Scegli Tu! ti consente di posizionare l'icona Scegli Tu! in una posizione personalizzata. È diverso dai controlli della posizione di AdChoices, che consentono di specificare solo uno dei quattro angoli.
Imposta la proprietà GADNativeAd.adChoicesView
con un GADAdChoicesView
prima del rendering e i contenuti di AdChoices verranno visualizzati all'interno di GADAdChoicesView
.
L'esempio seguente mostra come impostare una visualizzazione AdChoices personalizzata. L'icona Scegli Tu! verrà visualizzata all'interno del GADAdChoicesView
.
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader didReceiveNativeAd:(GADNativeAd *)nativeAd {
...
GADAdChoicesView *customAdChoicesView =
[[GADAdChoicesView alloc] initWithFrame: CGRectMake(..., ..., ..., ...)];
[nativeAdView addSubview:customAdChoicesView];
nativeAdView.adChoicesView = customAdChoicesView;
// Associate the native ad view with the native ad object. This is
// required to make the ad clickable.
// Note: this should always be done after populating the ad views.
nativeAdView.nativeAd = nativeAd;
}
Swift
func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
refreshAdButton.isEnabled = true
...
// Define a custom position for the AdChoices icon.
let customRect = CGRect(x: 100, y: 100, width: 15, height: 15)
let customAdChoicesView = GADAdChoicesView(frame: customRect)
nativeAdView.addSubview(customAdChoicesView)
nativeAdView.adChoicesView = customAdChoicesView
// Associate the native ad view with the native ad object. This is
// required to make the ad clickable.
// Note: this should always be done after populating the ad views.
nativeAdView.nativeAd = nativeAd;
}
Comandi video
Comportamento di attivazione della disattivazione audio
Il comportamento di inizio con l'audio disattivato ti consente di disattivare o attivare l'audio iniziale di un video.
ImpostaGADVideoOptions startMuted
con un valore BOOL
.
Il comportamento di attivazione della disattivazione audio all'avvio è attivo per impostazione predefinita.
Se questa opzione è disattivata, l'app richiede che il video inizi con l'audio.
Se questa opzione è attivata, l'app richiede che l'audio del video sia disattivato all'inizio.
L'esempio seguente mostra come avviare il video con l'audio non disattivato.
GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.startMuted = NO;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
Controlli di riproduzione personalizzati
In questo modo, puoi richiedere controlli di input video personalizzati per riprodurre, mettere in pausa o disattivare l'audio del video.
ImpostaGADVideoOptions customControlsRequested
con un valore BOOL
.
I controlli di riproduzione personalizzati sono disattivati per impostazione predefinita.
Se questa opzione non è attiva, nel video verranno mostrati i controlli di input visualizzati dall'SDK.
- Una volta attivata, puoi utilizzare
GADVideoController play
,GADVideoController pause
eGADVideoController setMute
per controllare l'annuncio video.
- Se l'annuncio include contenuti video e i controlli personalizzati sono attivati, devi mostrare i controlli personalizzati insieme all'annuncio, in quanto l'annuncio stesso non mostrerà alcun controllo. I controlli possono quindi chiamare i metodi pertinenti su
GADVideoController
.
L'esempio seguente mostra come richiedere un video con controlli di riproduzione personalizzati.
GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.customControlsRequested = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/21775744923/example/native"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
Verificare se i controlli personalizzati sono attivi
Poiché al momento della richiesta non è noto se l'annuncio restituito consentirà i controlli video personalizzati, devi verificare se sono attivati.
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd*)nativeAd {
GADVideoController *videoController = nativeAd.mediaContent.videoController;
BOOL canShowCustomControls = videoController.customControlsEnabled;
}
Swift
func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
let videoController = nativeAd.mediaContent.videoController
let canShowCustomControls = videoController?.customControlsEnabled() == true
}
Visualizzare controlli video personalizzati
Per visualizzare i controlli video personalizzati, segui le best practice riportate di seguito:
- Esegui il rendering della visualizzazione dei controlli personalizzati come elemento secondario della visualizzazione dell'annuncio nativo. Questo approccio garantisce che i calcoli della visibilità di Open Measurement considerino i controlli personalizzati come un'ostruzione non dannosa.
- Evita di eseguire il rendering di un overlay invisibile sull'intera visualizzazione dei contenuti multimediali. Gli overlay bloccano i clic nella visualizzazione dei contenuti multimediali, con un impatto negativo sul rendimento degli annunci nativi. Crea invece un piccolo overlay sufficientemente grande da adattarsi ai controlli.
Gesti di clic personalizzati
I gesti di clic personalizzati sono una funzionalità degli annunci nativi che consente di registrare come clic sugli annunci gli scorrimenti sulle visualizzazioni degli annunci. È progettato per funzionare con le app che utilizzano gesti di scorrimento per la navigazione nei contenuti. Questa guida spiega come attivare i gesti di clic personalizzati negli annunci nativi.
Inizializza un'istanza GADNativeAdCustomClickGestureOptions
con la direzione di scorrimento selezionata. Devi anche indicare se vuoi che i tocchi siano consentiti come clic.
I gesti di clic personalizzati sono disattivati per impostazione predefinita.
Se l'opzione è disattivata, verranno conteggiati come clic solo i tocchi.
Se l'opzione è attivata, i gesti di scorrimento verranno conteggiati come clic e potrai specificare se i tocchi possono comunque essere conteggiati come clic.
L'esempio seguente mostra come implementare un gesto di scorrimento personalizzato verso destra e mantenere il normale comportamento del tocco.
GADNativeAdCustomClickGestureOptions *swipeGestureOptions = [[GADNativeAdCustomClickGestureOptions alloc]
initWithSwipeGestureDirection:UISwipeGestureRecognizerDirectionRight
tapsAllowed:YES];
// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"/21775744923/example/native"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ swipeGestureOptions ]];
Ascolta gli eventi relativi ai gesti di scorrimento
Quando viene registrato un clic con gesto di scorrimento, l'SDK Google Mobile Ads invoca il metodo delegato
nativeAdDidRecordSwipeGestureClick:
su GADNativeAdDelegate
, oltre al metodo delegato
nativeAdDidRecordClick:
esistente.
#pragma mark - GADNativeAdDelegate implementation
// Called when a swipe gesture click is recorded.
- (void)nativeAdDidRecordSwipeGestureClick:(GADNativeAd *)nativeAd {
NSLog(@"A swipe gesture click has occurred.");
}
// Called when a swipe gesture click or a tap click is recorded, as configured in
// GADNativeAdCustomClickGestureOptions.
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
NSLog(@"A swipe gesture click or tap click has occurred.");
}
Mediazione
I gesti di clic personalizzati funzionano solo sugli annunci nativi visualizzati dall'SDK Google Mobile Ads. Le origini annuncio che richiedono SDK di terze parti per il rendering non rispondono all'impostazione delle indicazioni sui clic personalizzate.