Open Measurement no SDK de DAI do IMA

O SDK do IMA para iOS inclui o SDK do Open Measurement (OM), um padrão do setor desenvolvido pelo Interactive Advertising Bureau (IAB) para ativar a medição de visibilidade e verificação de terceiros. Ao usar o SDK do IMA para iOS, o SDK do OM incluído analisa automaticamente a tag <AdVerifications> nas tags de anúncio VAST e envia dados de visibilidade ao os fornecedores de medição especificados pela API OMID. O SDK do IMA é compatível com esse SDK. v1.4, extensões Ad Verifications do GAM no VAST 2+, e o nó Ad Verifications no VAST 4+.Para aproveitar o Open Measurement, tenha em mente os seguintes pontos:

  • Para usar o Open Measurement, você precisa ter uma versão 3.9.0 ou superior do SDK do IMA para iOS.

  • Os anúncios precisam ser configurados para programar <AdVerifications> no VAST de acordo com as especificações VAST 4.1 se estiver usando VAST 4.1+; Caso contrário, <Extension type="AdVerifications"> deve ser usado.

  • Não cubra a AdDisplayContainer com sobreposições (transparentes ou opacas), porque elas serão sinalizadas como obstruções pelo OM e reduzir a visibilidade.

Pré-requisitos

Teste

Para testar a medição aberta usando o SDK do IMA, use uma das versões necessárias do SDK acima com uma tag de anúncio de teste.

Você verá o <AdVerifications> retornado na sua resposta VAST.

Registrar obstruções de sobreposição de controles de vídeo

Controles de vídeo, como botões de pausa ou barras de progresso, fornecem uma reprodução essencial informações e ações aos usuários. Em dispositivos móveis, toques imprecisos e expectativas do usuário tornaram comum renderizar controles grandes e fáceis de tocar no elemento de mídia. Esses controles geralmente aparecem e esmaecem por um toque do usuário e não ficam visíveis na maior parte do tempo de reprodução.

Confira abaixo um exemplo de controles de vídeo renderizados pelo app YouTube:

Ao usar o SDK do IMA, a maioria dos editores implementa esses controles adicionando uma visualização acima do contêiner de exibição de anúncios que é quase transparente. Normalmente, os controles são elementos filhos dessa visualização que ocultam completamente o player de vídeo. Essa sobreposição transparente é usada para capturar eventos de toque e renderizar os controles para os usuários quando eles tocam.

Quando a visibilidade do anúncio pelo SDK do Open Measurement é calculada, todas as visualizações que se sobrepõem ao elemento de mídia são consideradas obstruções e reduzem a taxa de visibilidade. No caso em que uma sobreposição de toque transparente fica acima do todo o contêiner de exibição do anúncio, o inventário pode ser declarado e ficam completamente invisíveis.

O SDK do Open Measurement fornece provisionamentos para que os controles de vídeo sejam considerados "amigável" obstruções que são essenciais para a experiência do usuário. Uma vez registrados como fáceis de usar, esses controles são excluídos da visibilidade de anúncios de medida.

Com a compatibilidade do IAB e do MRC, o SDK do IMA introduz uma API para registrar esses sobreposições com o SDK do Open Measurement. Esses controles devem ser totalmente transparentes sobreposições ou botões pequenos. Quaisquer outras visualizações não relacionadas aos controles de vídeo devem não será registrada.

DO registro NÃO se inscreva
  • Sobreposição transparente para capturar os toques do usuário
  • Botões temporários
    • Pausar
    • Reproduzir
    • Tela cheia
    • Transmitir/AirPlay
    • Recolher
    • Progresso/procura
    • Outras ações relevantes para reprodução
  • Marcas-d'água
  • Pop-ups
  • Caixas de diálogo
  • Botões não temporários
  • Outras visualizações que bloqueiam

O exemplo de código a seguir demonstra como registrar sobreposições de controles de vídeo no contêiner de exibição do anúncio:

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];

Quando terminar de usá-las, essas obstruções poderão ser removidas chamando o seguinte método:

[displayContainer unregisterAllFriendlyObstructions];