Bei adaptiven Bannern können Sie die Breite einer Anzeige angeben, um die optimale Anzeigengröße zu ermitteln. Außerdem wird die Leistung maximiert, indem die Anzeigengröße für jedes Gerät optimiert wird. Dieser Ansatz bietet Möglichkeiten für eine verbesserte Leistung.
Im Vergleich zu adaptiven Ankerbannern sind adaptive Inline-Banner größer, höher. Außerdem wird eine variable statt einer festen Höhe verwendet. Adaptive Inline-Banner haben eine variable Höhe und können den gesamten Bildschirm oder eine von Ihnen angegebene maximale Höhe einnehmen.
Sie platzieren adaptive Inline-Banner in scrollbaren Inhalten, z. B.:
Vorbereitung
Bevor Sie fortfahren, müssen Sie die Anleitung Erste Schritte mit Banneranzeigen durchgearbeitet haben, Banneranzeigen.
Adaptive Inline-Banner implementieren
So erstellen Sie eine adaptive Inline-Anzeigengröße:
Ermitteln Sie die Breite des verwendeten Geräts oder legen Sie eine eigene Breite fest, wenn Sie nicht die volle Breite des Bildschirms verwenden möchten.
Kotlin
private val adWidth: Int get() { val displayMetrics = resources.displayMetrics val adWidthPixels = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { val windowMetrics: WindowMetrics = this.windowManager.currentWindowMetrics windowMetrics.bounds.width() } else { displayMetrics.widthPixels } val density = displayMetrics.density return (adWidthPixels / density).toInt() }Java
public int getAdWidth() { DisplayMetrics displayMetrics = getResources().getDisplayMetrics(); int adWidthPixels = displayMetrics.widthPixels; if (VERSION.SDK_INT >= VERSION_CODES.R) { WindowMetrics windowMetrics = this.getWindowManager().getCurrentWindowMetrics(); adWidthPixels = windowMetrics.getBounds().width(); } float density = displayMetrics.density; return (int) (adWidthPixels / density); }Verwenden Sie eine statische Methode für die Anzeigengrößenklasse, um ein adaptives Inline-Anzeigengrößenobjekt für die ausgewählte Ausrichtung abzurufen:
Kotlin
val adView = AdView(this@MainActivity) adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, adWidth))Java
final AdView adView = new AdView(MainActivity.this); adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, getAdWidth()));
Beachten Sie bei der Implementierung adaptiver Banner in Ihrer App Folgendes:
- Adaptive Inline-Bannergrößen funktionieren am besten, wenn die gesamte verfügbare Breite genutzt wird. In den meisten Fällen entspricht diese Größe der vollen Breite des verwendeten Gerätedisplays oder der vollen Breite des übergeordneten Inhalts des Banners. Sie müssen die Breite der Ansicht, in die die Anzeige eingefügt werden soll, die Gerätebreite, die Breite des übergeordneten Inhalts und alle relevanten sicheren Bereiche kennen.
- Möglicherweise müssen Sie Werbebuchungen aktualisieren oder neue erstellen, um mit adaptiven Größen zu arbeiten. Weitere Informationen.
Größe adaptiver Inline-Banner ausrichten
Verwenden Sie die folgenden Methoden, um eine adaptive Inline-Banneranzeige für eine bestimmte Ausrichtung vorab zu laden:
AdSize.getPortraitInlineAdaptiveBannerAdSize(Context context, int width)AdSize.getLandscapeInlineAdaptiveBannerAdSize(Context context, int width)
Wenn Ihre App sowohl Hoch- als auch Querformat unterstützt und Sie
eine adaptive Banneranzeige in der aktuellen Ausrichtung vorab laden möchten, verwenden Sie
AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width)
Mit dieser Methode wird eine Anzeige in der aktuellen Ausrichtung geladen.
Höhe adaptiver Inline-Banner begrenzen
Standardmäßig haben adaptive Inline-Banner, die ohne einen maxHeight Wert
eine maxHeight haben, die der Gerätehöhe entspricht. Verwenden Sie die
AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight)
Methode, um die Höhe adaptiver Inline
Banner zu begrenzen.
Zusätzliche Ressourcen
Beispiele auf GitHub
Laden Sie die Beispielanwendung herunter, um adaptive Inline-Banner in Aktion zu sehen.