SDK de anuncios multimedia interactivos (IMA) para iOS.
El SDK de IMA para iOS incluye el SDK de Open Measurement (OM), un estándar de la industria desarrollado por el Interactive Advertising Bureau (IAB) para habilitar la medición de la visibilidad y la verificación de terceros. Cuando se usa el SDK de IMA para iOS, el SDK de OM incluido analiza automáticamente la etiqueta <AdVerifications>
dentro de las etiquetas de anuncios de VAST y envía datos de visibilidad a los proveedores de medición especificados a través de la API de OMID.El SDK de IMA admite el SDK de OM v1.4, las extensiones de AdVerifications de GAM en VAST 2 y versiones posteriores, y el nodo AdVerifications en VAST 4 y versiones posteriores.Para aprovechar Open Measurement, ten en cuenta los siguientes puntos:
Para usar Open Measurement, debes tener la versión 3.9.0 o una posterior del SDK de IMA para iOS.
Los anuncios se deben configurar para publicar
<AdVerifications>
en su VAST según la especificación de VAST 4.1 si se usa VAST 4.1 o versiones posteriores. De lo contrario, se debe usar<Extension type="AdVerifications">
.No cubras el
AdDisplayContainer
con ninguna superposición (transparente u opaca), ya que el SDK de OM las marcará como obstrucciones y reducirán la visibilidad.
Requisitos previos
- Si tus anuncios se publican a través de Ad Manager, configura un proveedor de visibilidad para tu red de Ad Manager y asígnalo a tu línea de pedido.
Prueba
Para probar Open Measurement con el SDK de IMA, usa una de las versiones requeridas del SDK mencionadas anteriormente junto con una etiqueta de anuncio de prueba.
Deberías ver el elemento <AdVerifications>
que se devolvió en tu respuesta de VAST.
Registra obstrucciones de la superposición de controles de video
Los controles de video, como los botones de pausa o las barras de progreso, proporcionan información y acciones de reproducción esenciales para los usuarios. En dispositivos móviles, los toques imprecisos y las expectativas de los usuarios han hecho que sea una práctica común renderizar controles grandes y fáciles de usar con el tacto sobre el elemento multimedia. Estos controles suelen aparecer y desaparecer con un toque del usuario, y no se ven durante la mayor parte del tiempo de reproducción.
A continuación, se muestra un ejemplo de los controles de video que renderiza la app de YouTube:
Cuando se usa el SDK de IMA, la mayoría de los publicadores implementan estos controles agregando una vista sobre el contenedor de visualización de anuncios que es casi transparente. Por lo general, los controles son elementos secundarios de esta vista que ocluyen por completo el reproductor de video subyacente. Esta superposición transparente se usa para capturar eventos de toque y, luego, renderizar los controles para los usuarios cuando los tocan.
Cuando se calcula la visibilidad de los anuncios a través del SDK de Open Measurement, todas las vistas que se superponen al elemento multimedia se consideran obstrucciones y reducen el porcentaje de visibilidad. En el caso de que una capa superpuesta transparente de toques se encuentre sobre todo el contenedor de visualización del anuncio, es posible que el inventario se declare como completamente no visible.
El SDK de Open Measurement prevé que los controles de video se consideren obstrucciones "compatibles" que son esenciales para la experiencia del usuario. Una vez que se registran como amigables, estos controles se excluyen de la medición de la visibilidad de los anuncios.
Con la compatibilidad con IAB y MRC, el SDK de IMA introduce una API para registrar estas superposiciones con el SDK de Open Measurement. Estos controles deben ser superposiciones completamente transparentes o botones pequeños. No se deben registrar otras vistas que no estén relacionadas con los controles de video.
REGÍSTRATE | NO registrarse |
---|---|
|
|
En el siguiente ejemplo de código, se muestra cómo registrar superposiciones de controles de video en el contenedor de visualización de anuncios:
UIView *myTransparentTapOverlay = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 250)];
UIButton *myPauseButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 50, 10)];
// Substitute "myTransparentTapOverlay" and "myPauseButton" with the elements
// you want to register as video controls overlays.
// Make sure to register before ad playback starts.
IMAFriendlyObstruction *overlayObstruction =
[[IMAFriendlyObstruction alloc] initWithView:myTransparentTapOverlay
purpose:IMAFriendlyObstructionPurposeNotVisible
detailedReason:@"This overlay is transparent"];
IMAFriendlyObstruction *pauseButtonObstruction =
[[IMAFriendlyObstruction alloc] initWithView:myPauseButton
purpose:IMAFriendlyObstructionPurposeMediaControls
detailedReason:@"This is the video player pause button"];
[displayContainer registerFriendlyObstruction:overlayObstruction];
[displayContainer registerFriendlyObstruction:pauseButtonObstruction];
Cuando termines de usarlos, puedes quitar estos obstáculos llamando al siguiente método:
[displayContainer unregisterAllFriendlyObstructions];