El SDK de IMA de HTML5 admite creatividades de JavaScript de VPAID 2. Cuando habilitas la compatibilidad, debes tener en cuenta dos diferencias principales entre la especificación de VPAID 2 y la forma en que el SDK de IMA admite VPAID 2. Estas diferencias no afectan el código de implementación del reproductor o del SDK, pero son importantes para los autores de creatividades de VPAID 2 JavaScript, ya que las creatividades pueden arrojar errores o no funcionar como se espera cuando el SDK de IMA HTML5 las renderiza.
Requisitos previos
Para seguir esta guía, comienza con una app que tenga lo siguiente:
- Reproductor de video HTML5 con el SDK de IMA HTML5 integrado. Si no tienes uno, consulta Cómo configurar el SDK de IMA.
- Es una URL de etiqueta de anuncio de VAST que apunta a una creatividad de JavaScript de VPAID 2.
Recursos útiles
- Si no conoces VPAID 2, puedes obtener más información en la página de VPAID de IAB.
Habilita la compatibilidad con VPAID 2
Para habilitar la compatibilidad con JavaScript de VPAID 2, llama al siguiente método antes de inicializar tu AdDisplayContainer:
google.ima.settings.setVpaidMode(google.ima.ImaSdkSettings.VpaidMode.ENABLED);
...
var adDisplayContainer = new google.ima.AdDisplayContainer(adContainerElement);
var adsLoader = new google.ima.AdsLoader(adDisplayContainer);
...
Los modos de VPAID disponibles son los siguientes:
ENABLED
: Permite los anuncios de VPAID con la configuración predeterminada.INSECURE
: Permite los anuncios de VPAID en modo no seguro. Para obtener más información, consulta Seguridad de IFrame y Elemento proxy del reproductor de video.DISABLED
: No se reproducen los anuncios de VPAID. Si un anuncio solicitado devuelve una creatividad de VPAID, se arroja un error.
Para obtener más información sobre los modos de VPAID, consulta la documentación de la API de ImaSdkSettings.VpaidMode.
Advertencias sobre la compatibilidad con VPAID 2
Seguridad de IFrame
De forma predeterminada, el SDK de IMA usa un iframe seguro en lugar de un iframe compatible (mismo dominio) o una secuencia de comandos en la página para renderizar creatividades de JavaScript de VPAID 2.
Esto significa que, si una creatividad espera acceder al DOM de la página principal, podría causar un error. Para renderizar tu anuncio en un iframe compatible, puedes usar ImaSdkSettings.setVpaidMode(...)
de la siguiente manera:
adsLoader.getSettings().setVpaidMode(google.ima.ImaSdkSettings.VpaidMode.INSECURE);
Elemento proxy del reproductor de video
Para garantizar la seguridad y la funcionalidad móvil adecuada, en el modo ENABLED
, el SDK de IMA para HTML5 no proporciona el elemento de video real al anuncio, sino que proporciona un elemento proxy que imita gran parte de la funcionalidad del elemento de video normal.
En el caso de las creatividades de anuncios que solo llaman a métodos de la API admitidos, no debería haber cambios en el comportamiento de la renderización de las creatividades. Con el modo VpaidMode.INSECURE
, el SDK proporciona el elemento del reproductor de video en lugar del proxy.
Estos son los métodos, los objetos de escucha y los atributos disponibles en el elemento de proxy de video:
Métodos
addEventListener
canPlayType
load
play
pause
setattribute
Tipos de eventos para addEventListener
abort
canplay
canplaythrough
click
durationchange
emptied
ended
error
loadeddata
loadedmetadata
loadstart
pause
play
playing
progress
ratechange
suspend
seeked
seeking
timeupdate
waiting
Atributos
currentTime
duration
ended
paused
playbackRate
src
type
Preguntas frecuentes
- ¿Se admiten las creatividades de JavaScript de VPAID 2 en los SDKs de iOS o Android?
- El SDK de IMA de HTML5 es la única plataforma del SDK de IMA que admite creatividades de JavaScript de VPAID 2.
- ¿Esto habilita las creatividades de VPAID en el SDK de IMA HTML5?
- Sí, el SDK de IMA de HTML5 admite creatividades de JavaScript de VPAID 2.