L'SDK IMA per iOS 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 iOS, 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 tramite l'API OMID.L'SDK IMA supporta l'SDK OM v1.4, le estensioni GAM AdVerifications 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.9.0 o successive dell'SDK IMA per iOS.
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
AdDisplayContainer
con 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 delle versioni richieste dell'SDK sopra indicate, 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 pratica comune il rendering di controlli grandi e adatti al tocco sull'elemento multimediale. Questi controlli di solito vengono visualizzati e nascosti con un 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 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 tramite 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 dell'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 questi overlay 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:
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];
Una volta terminato, questi ostacoli possono essere rimossi chiamando il seguente metodo:
[displayContainer unregisterAllFriendlyObstructions];