L'SDK IMA per iOS include l'SDK Open Measurement (OM), uno standard di settore sviluppato dall'Interactive Advertising Bureau (IAB) per abilitare la misurazione della visibilità e della verifica di terze parti. Quando utilizzi l'SDK IMA per iOS, l'SDK OM incluso analizza automaticamente il tag <AdVerifications>
all'interno dei tag annuncio VAST e invia i dati sulla visibilità ai fornitori di servizi di misurazione specificati tramite l'API OMID. L'SDK IMA supporta l'SDK OM v1.4, le estensioni GAM AdVerifications su VAST 2 e versioni successive e il nodo AdVerifications su VAST 4 e versioni successive. Per sfruttare Open Measurement, tieni presente quanto segue:
Per utilizzare Open Measurement, devi disporre della versione 3.9.0 o successiva dell'SDK IMA per iOS.
Gli annunci devono essere configurati per il traffico
<AdVerifications>
nel VAST in base alla specifica VAST 4.1 se utilizzi VAST 4.1 o versioni successive; in caso contrario, deve essere utilizzato<Extension type="AdVerifications">
.Evita di coprire il
AdDisplayContainer
con overlay (trasparenti o opachi), poiché verranno segnalati come ostruzioni dall'OM SDK e ridurranno la visibilità.
Prerequisiti
- Se il traffico dei tuoi annunci avviene 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 delle versioni richieste dell'SDK sopra indicate, insieme a un tag annuncio di prova.
Dovresti vedere <AdVerifications>
restituito nella risposta VAST.
Registra le ostruzioni degli overlay dei controlli video
I controlli video, come i pulsanti di pausa o le barre di avanzamento, forniscono agli utenti informazioni e azioni di riproduzione essenziali. Sui dispositivi mobili, i tocchi imprecisi e le aspettative degli utenti hanno reso comune la pratica di visualizzare controlli grandi e adatti al tocco sull'elemento multimediale. Questi controlli di solito appaiono e svaniscono al tocco dell'utente e non sono visibili per la maggior parte del tempo di riproduzione.
Di seguito è riportato un esempio di controlli video visualizzati dall'app YouTube:
Quando utilizza 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 coprono completamente il video player sottostante. Questo overlay trasparente viene utilizzato per acquisire gli eventi di tocco e poi mostrare i controlli agli utenti quando vengono toccati.
Quando viene calcolata la visibilità dell'annuncio tramite l'SDK Open Measurement, tutte le visualizzazioni che si sovrappongono all'elemento multimediale vengono considerate ostruzioni e riducono il tasso di visibilità. Se un overlay trasparente per i tocchi si trova sopra l'intero contenitore di visualizzazione degli annunci, è possibile che l'inventario venga dichiarato completamente non visibile.
L'SDK Open Measurement prevede che i controlli video vengano considerati ostacoli "amichevoli" essenziali per l'esperienza dell'utente. Una volta registrati come idonei, 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 questi overlay con l'SDK Open Measurement. I 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 di esempio mostra come registrare gli overlay dei controlli video nel contenitore di visualizzazione dell'annuncio:
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];
Al termine, queste ostruzioni possono essere rimosse chiamando il seguente metodo:
[displayContainer unregisterAllFriendlyObstructions];