Interactive Media Ads (IMA) SDK für iOS
Das IMA SDK für iOS enthält das Open Measurement (OM) SDK, einen Branchenstandard, der vom Interactive Advertising Bureau (IAB) entwickelt wurde, um die Sichtbarkeits- und Überprüfungsmessung durch Drittanbieter zu ermöglichen. Wenn Sie das IMA SDK für iOS verwenden, wird das <AdVerifications>
-Tag in VAST-Anzeigen-Tags automatisch vom enthaltenen OM SDK geparst und die Daten zur Sichtbarkeit werden über die OMID API an die angegebenen Messanbieter gesendet.Das IMA SDK unterstützt OM SDK v1.4, GAM AdVerifications-Erweiterungen in VAST 2+ und den AdVerifications-Knoten in VAST 4+.Beachten Sie die folgenden Punkte, um Open Measurement zu nutzen:
Wenn Sie Open Measurement verwenden möchten, benötigen Sie das IMA SDK für iOS in der Version 3.9.0 oder höher.
Anzeigen müssen so konfiguriert werden, dass
<AdVerifications>
in ihrem VAST-Tag gemäß der VAST 4.1-Spezifikation getraffickt wird, wenn VAST 4.1 oder höher verwendet wird. Andernfalls sollte<Extension type="AdVerifications">
verwendet werden.Decken Sie die
AdDisplayContainer
nicht mit Overlays (transparent oder opak) ab, da diese vom OMSDK 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 der oben genannten erforderlichen SDK-Versionen zusammen mit einem Test-Anzeigen-Tag.
In Ihrer VAST-Antwort sollte <AdVerifications>
zurückgegeben werden.
Registrieren von Hindernissen für eingeblendete Videosteuerelemente
Videosteuerelemente wie Pausenschaltflächen oder Fortschrittsbalken liefern Nutzern wichtige Informationen zur Wiedergabe und ermöglichen ihnen, Aktionen auszuführen. Auf Mobilgeräten ist es aufgrund ungenauer Berührungen und Nutzererwartungen üblich, große, berührungsfreundliche Steuerelemente über dem Media-Element zu rendern. Diese Steuerelemente werden in der Regel durch Tippen des Nutzers ein- und ausgeblendet und sind während des größten Teils der Wiedergabe nicht sichtbar.
Unten sehen Sie ein Beispiel für die Videosteuerung, die von der YouTube App gerendert wird:
Wenn das IMA SDK verwendet wird, implementieren die meisten Publisher diese Steuerelemente, indem sie einen größtenteils transparenten View über dem Container für die Anzeigendarstellung hinzufügen. Normalerweise 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 Anzeigensichtbarkeit über das Open Measurement SDK werden alle Ansichten, die das Media-Element überlagern, als Hindernisse betrachtet und verringern die Sichtbarkeitsrate. Wenn ein transparentes Tipp-Overlay über dem gesamten Container für die Anzeigendarstellung liegt, kann das Inventar als vollständig nicht sichtbar deklariert werden.
Das Open Measurement SDK sieht vor, dass Videosteuerelemente als „freundliche“ Hindernisse betrachtet werden, die für die Nutzerfreundlichkeit unerlässlich sind. Nach der Registrierung als „freundlich“ werden diese Steuerelemente nicht in die Messung der Anzeigen-Sichtbarkeit einbezogen.
Mit der Unterstützung von IAB und MRC wird im IMA SDK eine API zum Registrieren dieser Overlays mit dem Open Measurement SDK eingeführt. Diese Steuerelemente müssen vollständig transparente Overlays oder kleine Schaltflächen sein. Alle anderen Ansichten, die nicht mit der Videosteuerung zusammenhängen, dürfen nicht registriert werden.
DO register | NICHT registrieren |
---|---|
|
|
Im folgenden Beispielcode wird gezeigt, wie Video-Steuerelement-Overlays im Anzeigecontainer registriert werden:
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];
Wenn Sie fertig sind, können Sie diese Hindernisse mit der folgenden Methode entfernen:
[displayContainer unregisterAllFriendlyObstructions];