L'SDK IMA per Android include l'SDK Open Measurement (OM), uno standard di settore sviluppato dall'Interactive Advertising Bureau (IAB) per consentire la misurazione della visibilità e della verifica di terze parti. Quando utilizzi l'SDK IMA per
Android, l'SDK OM incluso analizza automaticamente
il tag <AdVerifications> all'interno dei tag annuncio VAST e invia i dati di visibilità ai
fornitori di misurazione specificati utilizzando l'API OMID. L'SDK IMA supporta
l'SDK OM v1.4, le estensioni AdVerifications di GAM su VAST 2+
e il nodo AdVerifications su VAST 4+.Per sfruttare al meglio Open Measurement,
tieni presente quanto segue:
Per utilizzare Open Measurement, devi disporre della versione 3.11.0 o successiva dell'SDK IMA per Android. Tuttavia, l'esempio in questa guida è progettato per la versione più recente dell'SDK e include API introdotte nella versione 3.16.5.
Gli annunci devono essere configurati per il traffico
<AdVerifications>nel VAST in base alle specifiche VAST 4.1 se si utilizza VAST 4.1 o versioni successive; in caso contrario, deve essere utilizzato<Extension type="AdVerifications">.Evita di coprire
AdDisplayContainercon overlay (trasparenti o opachi), in quanto verranno segnalati come ostruzioni dall'OM SDK e ridurranno la visibilità.
Prerequisiti
- Se i tuoi annunci vengono pubblicati tramite Ad Manager, configura un fornitore visibilità per la tua rete Ad Manager e assegnalo al tuo elemento pubblicitario.
Test
Per testare Open Measurement utilizzando l'SDK IMA, utilizza una versione di IMA che supporti l'SDK OM, insieme a un tag annuncio di test.
Dovresti vedere <AdVerifications> restituito nella risposta VAST.
Registra le ostruzioni dell'overlay dei controlli video
I controlli video, come i pulsanti di pausa o le barre di avanzamento, forniscono agli utenti informazioni e azioni essenziali per la riproduzione. Sui dispositivi mobili, i tocchi imprecisi e le aspettative degli utenti hanno reso prassi comune il rendering di controlli grandi e adatti al tocco sull'elemento multimediale. Questi controlli vengono visualizzati e nascosti in dissolvenza quando l'utente tocca lo schermo e non sono visibili per la maggior parte del tempo di riproduzione.
Per un esempio di controlli video sovrapposti, vedi la seguente immagine sui controlli di rendering dell'app YouTube:

Quando utilizzano l'SDK IMA, la maggior parte dei publisher implementa questi controlli aggiungendo una visualizzazione sopra il contenitore di visualizzazione dell'annuncio, che è per lo più trasparente. In genere, i controlli sono elementi secondari di questa visualizzazione che occludono completamente il video player sottostante. Questa overlay trasparente viene utilizzata per acquisire gli eventi di tocco e poi visualizzare i controlli per gli utenti quando vengono toccati.
Quando viene calcolata la visibilità degli annunci utilizzando l'SDK Open Measurement, tutte le visualizzazioni che si sovrappongono all'elemento multimediale vengono considerate ostruzioni e riducono il tasso di visibilità. Nel caso in cui una sovrapposizione trasparente per il tocco si trovi sopra l'intero contenitore di visualizzazione dell'annuncio, è possibile che l'inventario venga dichiarato completamente non visualizzabile.
L'SDK Open Measurement prevede che i controlli video siano considerati "ostacoli" essenziali per l'esperienza utente. Una volta registrati come friendly, questi controlli vengono esclusi dalla misurazione della visibilità degli annunci.
Con il supporto di IAB e MRC, l'SDK IMA introduce un'API per registrare queste sovrapposizioni con l'SDK Open Measurement. Questi controlli devono essere overlay completamente trasparenti o piccoli pulsanti. Qualsiasi altra visualizzazione non correlata ai controlli video non deve essere registrata.
| Registrazione DO | NON registrare |
|---|---|
|
|
Il seguente codice campione mostra come registrare le overlay dei controlli video nel contenitore di visualizzazione dell'annuncio:
private void registerFriendlyObstructions(
AdDisplayContainer adDisplayContainer, View transparentTapOverlay, View pauseButton) {
ImaSdkFactory imaSdkFactory = ImaSdkFactory.getInstance();
// Make sure to register all friendly obstructions before ad playback starts.
FriendlyObstruction overlayObstruction =
imaSdkFactory.createFriendlyObstruction(
transparentTapOverlay,
FriendlyObstructionPurpose.NOT_VISIBLE,
"This overlay is transparent");
FriendlyObstruction pauseButtonObstruction =
imaSdkFactory.createFriendlyObstruction(
pauseButton,
FriendlyObstructionPurpose.VIDEO_CONTROLS,
"This is the video player pause button");
adDisplayContainer.registerFriendlyObstruction(overlayObstruction);
adDisplayContainer.registerFriendlyObstruction(pauseButtonObstruction);
}
Una volta terminato, questi ostacoli possono essere rimossi chiamando il seguente metodo:
private void unregisterFriendlyObstructions(AdDisplayContainer adDisplayContainer) {
adDisplayContainer.unregisterAllFriendlyObstructions();
}