Rich Media-Anzeigen auf Mobilgeräten

Das Google Mobile Ads SDK unterstützt jetzt MRAID v3 in der Betaphase. Diese Version basiert auf der bestehenden Unterstützung für MRAID v2. Werbetreibende können damit Ad Manager-Publishern MRAID v3-Creatives präsentieren. In diesem Leitfaden werden die Details zur MRAID-Implementierung erläutert, die in der MRAID v3-Spezifikation unklar und auslegungsfähig waren. Er richtet sich an MRAID v3-Creative-Autoren.

Vorbereitung

Publisher müssen Folgendes ausführen:

  • Google Play-Dienste 15.0.0 oder höher für MRAID Version 3
  • Google Play-Dienste 7.8 oder höher für MRAID Version 2

Hilfreiche Einführungen

Wenn Sie mit MRAID nicht vertraut sind, finden Sie weitere Informationen auf der MRAID-Seite des IAB. Sie können sich auch das Dokument MRAID v3-Definitionen herunterladen, das Details zu allen unten beschriebenen Parametern enthält, sowie den IAB-Blogpost zu MRAID v3.

Implementierungsdetails für MRAID v3 (Beta)

Sichtbarkeit – Ereignis „exposureChange“

Dieses Ereignis wird unterstützt. Wir empfehlen, einen Listener für das neue Ereignis exposureChange anstelle des veralteten Ereignisses viewableChange zu verwenden. Auch die Methode mraid.isViewable() ist veraltet. Diese veralteten Methoden werden jedoch weiterhin zur Aufrechterhaltung der Abwärtskompatibilität unterstützt.

Die Ereignisdefinition exposureChange wird gesendet, wenn sich die Anzeigenansicht ändert. Das SDK hat einen Polling-Mechanismus, um zu vermeiden, dass zu viele Ereignisse generiert werden. Der Anfangsstatus wird asynchron gesendet, nachdem die Anzeige einen Listener registriert hat. Der Rückruf enthält den Parameter exposed_percentage, eine Gleitkommazahl zwischen 0.0 und 100.0.

In der MRAID v3-Spezifikation finden Sie Anwendungsbeispiele.

MRAID-Erkennung und -Initialisierung sowie MRAID_ENV-Attribute

Das SDK entspricht dem Initialisierungsprotokoll gemäß der MRAID v3-Spezifikation.

Im MRAID_ENV-Objekt sendet das SDK keine IDFA-, limitAdTracking-, App-ID- oder COPPA-Werte (optional). Es enthält alle erforderlichen Variablen im MRAID_ENV-Objekt, einschließlich MRAID-Version, SDK-Name und SDK-Version.

Hörbarkeitsmessung

Es wird ein neues Ereignis (audioVolumeChange) eingeführt, um zu erkennen, ob Audioinhalte zu hören sind und wann sich die Lautstärke ändert.

Das Ereignis audioVolumeChange hat einen einzelnen Parameter: volume_percentage. Der Wert ist der Prozentsatz der maximalen Lautstärke der Audiowiedergabe. Es ist eine Gleitkommazahl zwischen 0.0 und 100.0 (0.0, wenn die Wiedergabe nicht zulässig ist) oder null, wenn die Lautstärke nicht bestimmt werden kann.

In der MRAID v3-Spezifikation finden Sie Anwendungsbeispiele.

mraid.getLocation()

Da mraid.getLocation() nicht unterstützt wird, wird immer -1 zurückgegeben.

mraid.unload()

Diese Methode kann jederzeit aufgerufen werden. Das SDK reagiert, indem es die Anzeige schließt, die Ressourcen deallociert und dann entweder die Webansicht entfernt oder durch ein anderes Dokument oder eine neue Anzeige ersetzt.

Wenn das Creative unload() aufruft, reagiert die native Ebene für die verschiedenen Creative-Typen so:

Typ Funktionsweise von unload()
Banner Stellen Sie eine neue Anzeigenanfrage mit denselben Anfrageparametern wie die aktuelle Anzeige.
Interstitial Schließen Sie das Interstitial.

VPAID (Video Player-Ad Interface Definition)

VPAID wird vom Google Mobile Ads SDK nicht unterstützt. mraid.supports('vpaid') gibt „false“ zurück.

mraid.useCustomClose()

mraid.useCustomClose() wird je nach Format und Creative-Typ möglicherweise nicht unterstützt.

Details zur Implementierung von MRAID v2

mraid.getVersion()

mraid.getVersion() gibt 2.0 erst zurück, wenn das Creative geladen wurde. Prüfe die MRAID-Version nicht, wenn mraid.getState() loading zurückgibt.

mraid.resize()

Wenn mraid.resize() aufgerufen wird, wird das ursprüngliche Banner durch das Screenshot-Bild des Banners ersetzt. Das ist besonders auffällig, wenn die Anzeige nach der Größenänderung nicht die ursprüngliche Werbefläche bedeckt.

Außerdem folgen Anzeigen mit geänderter Größe nicht dem ursprünglichen Bannerrahmen. Wenn ein Banner in einer scrollbaren Ansicht platziert wird, wird die Anzeige mit der geänderten Größe nicht mit dem Banner gescrollt.

mraid.setResizeProperties()

Alle Aufrufe von mraid.setResizeProperties() müssen eine vollständige Liste der erforderlichen Properties enthalten. Wenn die Eigenschaften für die Größe ungültig sind, werden sie auf die Standardwerte zurückgesetzt und alle nachfolgenden Aufrufe von mraid.resize() schlagen fehl, bis mraid.setResizeProperties() mit gültigen Parametern noch einmal aufgerufen wird.

mraid.getMaxSize()

mraid.getMaxSize() sollte nur verwendet werden, um die maximale Größe für die Größe von Anzeigen zu bestimmen. Verwenden Sie mraid.getScreenSize(), um die Größe einer Expandable-Anzeige zu ermitteln.

mraid.setOrientationProperties()

Wenn mraid.setOrientationProperties() mit der allowOrientationChange-Eigenschaft true aufgerufen wird, hat das Festlegen der forceOrientation-Eigenschaft keine Auswirkungen. Bei Creatives, bei denen die Ausrichtung erzwungen werden soll, muss allowOrientationChange auf false festgelegt sein.

mraid.isViewable()

Wenn eine Ansicht eine ansonsten sichtbare Anzeige verdeckt, wird mraid.isViewable() trotzdem zurückgegeben.true App-Inhalte dürfen sichtbare Anzeigen nicht verdecken.

mraid.getCurrentPosition()

Während eine zweiteilige Expandable-Anzeige im erweiterten Zustand ist, wird bei einem Aufruf von mraid.getCurrentPosition() für den ersten Teil die Größe des Bildschirms zurückgegeben.

mraid.storePicture()

Damit eine App mraid.storePicture() unterstützt, muss sie die Berechtigung android.permission.WRITE_EXTERNAL_STORAGE enthalten.