Das IMA SDK für Android enthält das Open Measurement (OM) SDK, einen Branchenstandard, der vom Interactive Advertising Bureau (IAB) entwickelt wurde, um die Sichtbarkeit und Überprüfung durch Drittanbieter zu ermöglichen. Wenn Sie das IMA SDK für Android verwenden, wird das <AdVerifications>
-Tag in VAST-Anzeigen-Tags automatisch vom enthaltenen OM SDK geparst und Sichtbarkeitsdaten werden über die OMID API an die angegebenen Analyseanbieter gesendet.Das IMA SDK unterstützt das OM SDK 1.4, GAM-AdVerifications-Erweiterungen in VAST 2 und höher sowie den AdVerifications-Knoten in VAST 4 und höher.Beachten Sie die folgenden Punkte, wenn Sie Open Measurement nutzen möchten:
Wenn Sie Open Measurement verwenden möchten, benötigen Sie das IMA SDK for Android ab Version 3.11.0. Das Beispiel in diesem Leitfaden ist jedoch für die neueste Version des SDKs konzipiert und enthält APIs, die in Version 3.16.5 eingeführt wurden.
Anzeigen müssen so konfiguriert sein, dass sie
<AdVerifications>
in ihrem VAST-Tag gemäß der VAST 4.1-Spezifikation ausliefern, wenn VAST 4.1 oder höher verwendet wird. Andernfalls sollte<Extension type="AdVerifications">
verwendet werden.Achten Sie darauf, dass die
AdDisplayContainer
nicht von Overlays (transparent oder opak) verdeckt wird, da diese vom OMSDK als Hindernisse gekennzeichnet und die Sichtbarkeit verringert wird.
Vorbereitung
- Wenn Ihre Anzeigen über Ad Manager ausgeliefert werden, konfigurieren Sie einen Anbieter für die Sichtbarkeitsmessung für Ihr Ad Manager-Netzwerk und weisen Sie ihn Ihrer Werbebuchung zu.
Test
Wenn Sie Open Measurement mit dem IMA SDK testen möchten, verwenden Sie eine der oben genannten erforderlichen SDK-Versionen zusammen mit einem Test-Anzeigen-Tag.
Die <AdVerifications>
sollte in Ihrer VAST-Antwort zurückgegeben werden.
Blockierungen durch eingeblendete Videosteuerelemente registrieren
Videosteuerungen wie Pause-Schaltflächen oder Fortschrittsbalken bieten Nutzern wichtige Informationen zur Wiedergabe und Aktionen. Auf Mobilgeräten sind ungenaue Tippaktionen und die Erwartungen der Nutzer dazu geführt, dass große, berührungsfreundliche Steuerelemente für das Medienelement üblich sind. Diese Steuerelemente werden in der Regel durch Tippen des Nutzers eingeblendet und sind während der Wiedergabe größtenteils nicht sichtbar.
Unten sehen Sie ein Beispiel für Videosteuerungen, die von der YouTube App gerendert werden:
Bei Verwendung des IMA SDK implementieren die meisten Publisher diese Steuerelemente, indem sie über dem Anzeigendisplaycontainer eine Ansicht hinzufügen, die größtenteils transparent ist. Normalerweise sind die Steuerelemente untergeordnete Elemente dieser Ansicht, die den zugrunde liegenden Videoplayer vollständig verdecken. Dieses transparente Overlay wird verwendet, um Tippen-Ereignisse zu erfassen und die Steuerelemente dann für Nutzer zu rendern, wenn sie darauf tippen.
Wenn die Sichtbarkeit von Anzeigen über das Open Measurement SDK berechnet wird, werden alle Ansichten, die das Medienelement überlagern, als Hindernisse betrachtet und verringern die Sichtbarkeitsrate. Wenn ein transparentes Tipp-Overlay über dem gesamten Anzeigendisplay-Container liegt, kann das Inventar als vollständig nicht sichtbar deklariert werden.
Das Open Measurement SDK sieht vor, dass Videokontrollelemente als „freundliche“ Hindernisse betrachtet werden, die für die Nutzerfreundlichkeit unerlässlich sind. Sobald sie als werbefreundlich registriert wurden, werden diese Steuerelemente von der Messung der Anzeigensichtbarkeit ausgeschlossen.
Mit der Unterstützung von IAB und MRC wird im IMA SDK eine API eingeführt, mit der diese Overlays im Open Measurement SDK registriert werden können. Diese Steuerelemente müssen vollständig transparente Overlays oder kleine Schaltflächen sein. Alle anderen Aufrufe, die nicht mit den Videosteuerungen zusammenhängen, dürfen nicht erfasst werden.
DO registrieren | NICHT registrieren |
---|---|
|
|
Im folgenden Codebeispiel wird gezeigt, wie Overlays für Videosteuerungen im Anzeigendisplaycontainer registriert werden:
myTransparentTapOverlay = (ViewGroup) rootView.findViewById(R.id.overlay);
myPauseButton = (ImageButton) rootView.findViewById(R.id.pauseButton);
// Substitute "myTransparentTapOverlay" and "myPauseButton" with the
// elements you want to register as video controls overlays.
// Make sure to register before ad playback starts.
overlayObstruction = ImaSdkFactory.createFriendlyObstruction(
myTransparentTapOverlay,
FriendlyObstructionPurpose.NOT_VISIBLE,
"This overlay is transparent"
);
pauseButtonObstruction = ImaSdkFactory.createFriendlyObstruction(
myPauseButton,
FriendlyObstructionPurpose.VIDEO_CONTROLS,
"This is the video player pause button"
);
displayContainer.registerFriendlyObstruction(overlayObstruction);
displayContainer.registerFriendlyObstruction(pauseButtonObstruction);
Wenn Sie mit ihnen fertig sind, können Sie diese Hindernisse entfernen, indem Sie die folgende Methode aufrufen:
displayContainer.unregisterAllFriendlyObstructions();