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 Sichtbarkeitsmessung und ‑verifizierung durch Drittanbieter zu ermöglichen. Wenn Sie das IMA SDK für
Android verwenden, parst das enthaltene OM SDK automatisch
das <AdVerifications> Tag in VAST-Anzeigen-Tags und sendet Sichtbarkeitsdaten über die OMID API an
die angegebenen Messanbieter. Das IMA SDK unterstützt das OM SDK v1.6, GAM-Erweiterungen für die Anzeigenverifizierung in VAST 2+ und den Knoten „AdVerifications“ in VAST 4+.Beachten Sie Folgendes, wenn Sie Open Measurement nutzen möchten:
Sie benötigen Version 3.11.0 oder höher des IMA SDK für Android. Das Beispiel in dieser Anleitung ist jedoch für die neueste Version des SDK konzipiert und enthält APIs, die in Version 3.16.5 eingeführt wurden.
Wenn Sie VAST 4.1 oder höher verwenden, müssen Anzeigen so konfiguriert sein, dass sie gemäß der VAST 4.1-Spezifikation
<AdVerifications>in ihrem VAST-Tag ausliefern. Andernfalls sollte<Extension type="AdVerifications">verwendet werden.Decken Sie den
AdDisplayContainernicht mit Overlays ab (transparent oder undurchsichtig), da diese vom OM SDK als Hindernisse gekennzeichnet werden und die Sichtbarkeit verringern.
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 diesen Anbieter Ihrer Werbebuchung zu.
Test
Wenn Sie Open Measurement mit dem IMA SDK testen möchten, verwenden Sie eine IMA-Version, die das OM SDK unterstützt, sowie ein Test-Anzeigen-Tag.
In Ihrer VAST-Antwort sollte <AdVerifications> zurückgegeben werden.
Hindernisse durch Video-Steuerelemente-Overlays registrieren
Video-Steuerelemente wie Pausen-Buttons oder Fortschrittsbalken liefern Nutzern wichtige Informationen zur Wiedergabe und ermöglichen ihnen, die Wiedergabe zu steuern. Auf Mobilgeräten ist es aufgrund ungenauer Tippeingaben und Nutzererwartungen üblich, große, touchfreundliche Steuerelemente über dem Media-Element zu rendern. Diese Steuerelemente werden in der Regel durch eine Tippeingabe des Nutzers ein- und ausgeblendet und sind während der Wiedergabe die meiste Zeit nicht sichtbar.
Ein Beispiel für das Überlagern von Video-Steuerelementen finden Sie in der folgenden Abbildung, die die Steuerelemente in der YouTube App zeigt:

Wenn Sie das IMA SDK verwenden, implementieren die meisten Publisher diese Steuerelemente, indem sie eine Ansicht über dem Anzeigen-Container hinzufügen, die größtenteils transparent ist. In der Regel sind die Steuerelemente untergeordnete Elemente dieser Ansicht, die den zugrunde liegenden Videoplayer vollständig verdecken. Dieses transparente Overlay wird verwendet, um Tippereignisse zu erfassen und die Steuerelemente dann für Nutzer zu rendern, wenn sie darauf tippen.
Bei der Berechnung der Sichtbarkeit von Anzeigen mit dem Open Measurement SDK werden alle Ansichten, die das Media-Element überlagern, als Hindernisse betrachtet und verringern die Sichtbarkeitsrate. Wenn sich ein transparentes Tipp-Overlay über dem gesamten Anzeigen-Container befindet, kann das Inventar als vollständig nicht sichtbar deklariert werden.
Das Open Measurement SDK sieht vor, dass Video-Steuerelemente als „freundliche“ Hindernisse betrachtet werden, die für die Nutzererfahrung unerlässlich sind. Sobald diese Steuerelemente als freundlich registriert wurden, werden sie bei der Messung der Sichtbarkeit von Anzeigen nicht berücksichtigt.
Mit Unterstützung von IAB und MRC führt das IMA SDK eine API ein, mit der diese Overlays beim Open Measurement SDK registriert werden können. Diese Steuerelemente müssen vollständig transparente Overlays oder kleine Buttons sein. Alle anderen Ansichten, die nicht mit Video-Steuerelementen zusammenhängen, dürfen nicht registriert werden.
| Registrieren | Nicht registrieren |
|---|---|
|
|
Der folgende Beispielcode zeigt, wie Sie Overlays für Video-Steuerelemente im Anzeigen-Container registrieren:
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 diese Hindernisse nicht mehr benötigen, können Sie sie mit der folgenden Methode entfernen:
displayContainer.unregisterAllFriendlyObstructions();