Modos de operación del SDK
El SDK puede operar en uno o más modos, según la respuesta del anuncio que recibe del servidor de anuncios.
- Anuncio único
- Anuncio que se puede reproducir en cualquier momento cuando se envía el mensaje al
IMAAdsManager
.start
No se necesita ninguna inicialización especial para reproducir un solo anuncio. - Grupo de anuncios
- Varios anuncios que se reproducen uno tras otro cuando se envía el mensaje
start
al objetoIMAAdsManager
. No se requiere ninguna inicialización especial para reproducir un solo pod de anuncios. - Reglas de anuncios
- Es una playlist de pausas publicitarias programadas en ciertos momentos para un contenido específico. El mensaje
start
se ignora en el modo de reglas de anuncios. Se pueden programar varias pausas publicitarias en una sola playlist (p.ej., anuncios previos al video, durante el video y finales del video). Para obtener más detalles sobre la implementación, consulta la sección Reglas de Anuncios a continuación.
Reglas de anuncios
El SDK de IMA para tvOS admite playlists de anuncios completamente automatizadas. Esta función inserta pausas publicitarias en el contenido según se especifica en Google Ad Manager cuando se coordina el tráfico de tus anuncios. También simplifica en gran medida el código del reproductor de video necesario para admitir pausas publicitarias, incluidos los anuncios previos al video, durante el video y al final del video.
- Cuando se publican anuncios en Ad Manager, es posible especificar varias reglas de anuncios, como "siempre reproducir una pausa publicitaria al comienzo del contenido" o "reproducir una pausa publicitaria de un minuto cada 30 minutos de contenido".
- Cuando se solicitan anuncios, el servidor de anuncios puede devolver una playlist de anuncios. El SDK procesa la playlist y programa automáticamente las pausas publicitarias especificadas.
- Cuando se inicializa
AdsManager
, se pasa un objetoIMAContentPlayhead
a través de la llamadainitializeWithContentPlayhead:adsRenderingSettings:
. Si usas un AVPlayer para mostrar tu contenido, debes pasar una instancia deIMAAVPlayerContentPlayhead
al SDK cuando crees tuadDisplayContainer
. Este objeto se usa para hacer un seguimiento del progreso de la reproducción de contenido, de modo que las pausas publicitarias se inserten automáticamente en los momentos especificados en Ad Manager.
Con AVPlayer:
IMAContentPlayhead *contentPlayhead = [[IMAAVPlayerContentPlayhead alloc] initWithAVPlayer:self.contentAVPlayer]; IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:adTagUrl adDisplayContainer:adDisplayContainer contentPlayhead:contentPlayhead userContext:nil];
Sin AVPlayer:
- Implementa la interfaz
IMAContentPlayhead
. - Implementa
currentTime
para devolver la hora actual de tu reproductor de video. - Cambia la llamada de inicialización de
IMAAdsManager
para usarinitializeWithContentPlayhead:self
.
- Implementa la interfaz
- El IMAAdsManagerDelegate se usa para pausar y reanudar el contenido a medida que se reproducen las pausas publicitarias.
Nota: Cuando termine la reproducción del contenido o el usuario la detenga, asegúrate de llamar a contentComplete
en el IMAAdsLoader
para indicarle al SDK que finalizó la reproducción del contenido. Luego, el SDK reproduce la pausa publicitaria al final del video, si se programó una.
El evento ALL_ADS_COMPLETED
se activa cuando se reproducen todas las pausas publicitarias. Además, ten en cuenta que el seguimiento de contenido comienza cuando se llama al método initializeWithContentPlayhead:adsRenderingSettings
de IMAAdsManager
, y siempre debes llamar a initializeWithContentPlayhead:adsRenderingSettings
antes de reproducir contenido.