Open Measurement en el SDK de IMA de DAI

El SDK de IMA para iOS incluye el SDK de Open Measurement (OM), un estándar de la industria desarrollado por la Interactive Advertising Bureau (IAB) para habilitar la medición de visibilidad y verificación de terceros. Cuando use el SDK de IMA para iOS, el SDK de OM incluido analiza automáticamente la etiqueta <AdVerifications> en las etiquetas de anuncios VAST y envía los datos de visibilidad a los proveedores de medición especificados a través de la API de OMID.El SDK de IMA admite v1.4, extensiones de Ad Verifications de GAM en VAST 2+ y el nodo de Ad Verifications en VAST 4+.Para aprovechar Open Measurement, ten en cuenta lo siguiente:

  • Para usar Open Measurement, debes tener la versión 3.9.0 o superior de la SDK de IMA para iOS.

  • Los anuncios deben configurarse para coordinar el tráfico de <AdVerifications> en su VAST según la especificación de VAST 4.1 si usas VAST 4.1 o versiones posteriores; de lo contrario, <Extension type="AdVerifications"> que se debe usar.

  • Evita cubrir el AdDisplayContainer con superposiciones. (transparente u opaco), ya que el OM marcará estos elementos como obstrucciones. SDK y reducir la visibilidad.

Requisitos previos

Prueba

Para probar Open Measurement con el SDK de IMA, usa una de las versiones requeridas de el SDK mencionado anteriormente, junto con una etiqueta de anuncio de prueba.

Deberías ver el <AdVerifications> que se muestra en tu respuesta de VAST.

Registra obstrucciones de 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 a los usuarios. En dispositivos móviles, presiones imprecisas y el usuario las expectativas hacen que sea una práctica común renderizar controles sobre el elemento multimedia. Por lo general, estos controles se atenúan el usuario presiona y no son visibles durante la gran mayoría 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 implementa estos controles agregando vista sobre el contenedor del anuncio gráfico que es mayormente 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 presión y, luego, renderizar los controles para los usuarios cuando se presionan.

Cuando se calcula la visibilidad de los anuncios a través del SDK de Open Measurement, todas las vistas que se superponen con el elemento multimedia se consideran obstrucciones y reducen el porcentaje de visibilidad. Si hay una superposición transparente de pulsaciones sobre el todo el contenedor de anuncios gráficos, es posible que el inventario se declare completamente invisibles.

El SDK de Open Measurement hace disposiciones para que se consideren los controles de video "amigable" y obstrucciones esenciales para la experiencia del usuario. Una vez se registraron como amigables, estos controles se excluyen de la visibilidad de los anuncios de medición.

Gracias a la compatibilidad con IAB y el MRC, el SDK de IMA presenta una API para registrar estas con el SDK de Open Measurement. Estos controles deben ser completamente transparentes superposiciones o botones pequeños. Cualquier otra vista no relacionada con los controles de video debe que no esté registrada.

REGÍSTRATE NO te registres
  • Superposición transparente para capturar los toques del usuario
  • Botones transitorios
    • Pausar
    • Reproducir
    • Pantalla completa
    • Cast/AirPlay
    • Contraer
    • Progreso/búsqueda
    • Otras acciones relevantes para la reproducción
  • Marcas de agua
  • Ventanas emergentes
  • Diálogos
  • Botones no transitorios
  • Otras vistas que ocultan contenido

En el siguiente código de ejemplo, se muestra cómo registrar superposiciones de controles de video en el contenedor de anuncios gráficos:

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 usarlas, puedes quitar estas obstrucciones llamando al siguiente método:

[displayContainer unregisterAllFriendlyObstructions];