Ativar a Open Measurement

Selecione a plataforma: HTML5 Android iOS

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 permitir 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 do VAST e envia dados de visibilidade aos fornecedores de medição especificados usando a API OMID. O SDK do IMA é compatível com o SDK do OM v1.6, as extensões AdVerifications do GAM no VAST 2+ e o nó AdVerifications no VAST 4+.Para aproveitar o Open Measurement, considere os seguintes pontos:

  • Para usar o Open Measurement, é necessário ter a versão 3.9.0 ou mais recente do SDK do IMA para iOS.

  • Os anúncios precisam ser configurados para trafegar <AdVerifications> no VAST de acordo com a especificação do VAST 4.1, se estiverem usando o VAST 4.1 ou mais recente. Caso contrário, use <Extension type="AdVerifications">.

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

Pré-requisitos

Teste

Para testar o Open Measurement usando o SDK do IMA, use uma versão do IMA que ofereça suporte ao SDK do OM, além de uma tag de anúncio de teste.

O <AdVerifications> vai aparecer na resposta VAST.

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

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

Para ver um exemplo de sobreposição de controles de vídeo, confira a imagem a seguir sobre os controles de renderização do app do YouTube:

Imagem de exemplo de sobreposição de medição aberta

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

Quando a visibilidade do anúncio é calculada usando o SDK do Open Measurement, todas as visualizações sobrepostas ao elemento de mídia são consideradas obstruções e reduzem a taxa de visibilidade. No caso de uma sobreposição de toque transparente acima de todo o contêiner de exibição do anúncio, é possível que o inventário seja declarado completamente não visível.

O SDK de medição aberta permite que os controles de vídeo sejam considerados obstruções "amigáveis" essenciais para a experiência do usuário. Depois de registrados como amigáveis, esses controles são excluídos da medição de visibilidade do anúncio.

Com o suporte do IAB e do MRC, o SDK do IMA apresenta uma API para registrar essas sobreposições com o SDK de medição aberto. Esses controles precisam ser sobreposições totalmente transparentes ou botões pequenos. Não registre outras visualizações não relacionadas aos controles de vídeo.

Registre-se NÃO registre
  • Sobreposição transparente para capturar toques do usuário
  • Botões temporários
    • Pausar
    • Reproduzir
    • Tela cheia
    • Transmitir/AirPlay
    • Fechar
    • Progresso/Busca
    • Outras ações relevantes de reprodução
  • Marcas-d'água
  • Pop-ups
  • Caixas de diálogo
  • Botões não temporários
  • Outras visualizações de obstrução

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

UIView *myTransparentTapOverlay = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 250)];
UIButton *myPauseButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 50, 10)];
// Replace myTransparentTapOverlay and myPauseButton with your own elements
// that function as video control 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:

Objective-C

- (void)unregisterObstructionsForContainer:(IMAAdDisplayContainer *)displayContainer {
    // This removes all previously registered friendly obstructions from the container.
    [displayContainer unregisterAllFriendlyObstructions];
}

Swift

func unregisterObstructions(displayContainer: IMAAdDisplayContainer) {
  // This removes all previously registered friendly obstructions from the container.
  displayContainer.unregisterAllFriendlyObstructions()
}