Modalità operative dell'SDK
L'SDK può operare in una o più modalità, a seconda della risposta all'annuncio che riceve dall'ad server.
- Annuncio singolo
- Un annuncio che può essere riprodotto in qualsiasi momento quando il messaggio viene inviato al
IMAAdsManager
.start
Non è necessaria alcuna inizializzazione speciale per riprodurre un singolo annuncio. - Pod di annunci
- Diversi annunci riprodotti uno dopo l'altro quando il messaggio
start
viene inviato alIMAAdsManager
. Non è necessaria alcuna inizializzazione speciale per riprodurre un singolo pod di annunci. - Regole per gli annunci
- Una playlist di interruzioni pubblicitarie programmate in determinati orari per contenuti
specifici. Il messaggio
start
viene ignorato nella modalità regole per gli annunci. All'interno di una singola playlist possono essere programmate diverse interruzioni pubblicitarie (ad es. pre-roll, mid-roll, post-roll). Per ulteriori dettagli sull'implementazione, consulta la sezione Regole per gli annunci di seguito.
Regole per gli annunci
L'SDK IMA tvOS supporta playlist di annunci completamente automatizzate. Questa funzionalità inserisce le interruzioni pubblicitarie nei contenuti come specificato in Google Ad Manager durante la gestione del traffico degli annunci. Inoltre, semplifica notevolmente il codice del video player necessario per supportare le interruzioni pubblicitarie, inclusi pre-roll, mid-roll e post-roll.
- Quando fai il trafficking degli annunci in Ad Manager, è possibile specificare varie regole per gli annunci, come "riproduci sempre l'interruzione pubblicitaria all'inizio dei contenuti" o "riproduci un'interruzione pubblicitaria di un minuto ogni 30 minuti di contenuti".
- Quando vengono richiesti gli annunci, l'ad server può restituire una playlist di annunci. L'SDK elabora la playlist e pianifica automaticamente le interruzioni pubblicitarie specificate.
- Durante l'inizializzazione di
AdsManager
, viene passato un oggettoIMAContentPlayhead
tramite la chiamatainitializeWithContentPlayhead:adsRenderingSettings:
. Se utilizzi un AVPlayer per visualizzare i tuoi contenuti, passi un'istanza diIMAAVPlayerContentPlayhead
all'SDK quando creiadDisplayContainer
. Questo oggetto viene utilizzato per monitorare l'avanzamento della riproduzione dei contenuti in modo che le interruzioni pubblicitarie vengano inserite automaticamente negli orari specificati in Ad Manager.
Con AVPlayer:
IMAContentPlayhead *contentPlayhead = [[IMAAVPlayerContentPlayhead alloc] initWithAVPlayer:self.contentAVPlayer]; IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:adTagUrl adDisplayContainer:adDisplayContainer contentPlayhead:contentPlayhead userContext:nil];
Senza AVPlayer:
- Implementa l'interfaccia
IMAContentPlayhead
. - Implementa
currentTime
per restituire l'ora corrente del tuo video player. - Modifica la chiamata di inizializzazione
IMAAdsManager
per utilizzareinitializeWithContentPlayhead:self
.
- Implementa l'interfaccia
- IMAAdsManagerDelegate viene utilizzato per mettere in pausa e riprendere i contenuti durante la riproduzione delle interruzioni pubblicitarie.
Nota:quando la riproduzione dei contenuti è terminata o
l'utente l'ha interrotta, assicurati di chiamare contentComplete
su IMAAdsLoader
per segnalare all'SDK che la riproduzione dei contenuti
è terminata. L'SDK riproduce quindi la pausa pubblicitaria post-roll, se ne è stata pianificata una.
L'evento ALL_ADS_COMPLETED
viene generato quando sono state riprodotte tutte le interruzioni pubblicitarie. Inoltre, tieni presente che il monitoraggio dei contenuti inizia quando viene chiamato il metodo initializeWithContentPlayhead:adsRenderingSettings
di IMAAdsManager
e devi sempre chiamare initializeWithContentPlayhead:adsRenderingSettings
prima di riprodurre i contenuti.