Adaptive Inline-Banner für scrollende Banner verwenden

Bei adaptiven Bannern können Sie die Breite einer Anzeige angeben, um die optimale Anzeigengröße für jedes Gerät zu bestimmen. Im Gegensatz zu adaptiven Ankerbannern sind adaptive Inline-Banner größer und höher und haben keine feste Höhe. Die Höhe adaptiver Inline-Banner ist variabel. Diese Banner können den gesamten Bildschirm oder eine von Ihnen angegebene maximale Höhe einnehmen.

In diesem Leitfaden wird beschrieben, wie Sie adaptive Inline-Banner erstellen und die Bannergröße festlegen.

Das folgende Bild zeigt adaptive Inline-Banner in scrollbaren Inhalten:

Diagramm mit den Unterschieden zwischen adaptiven Bannern und adaptiven Inline-Bannern

Hinweis

Bevor Sie fortfahren, müssen Sie Banneranzeigen einrichten.

Ein vollständiges Beispiel für ein adaptives Inline-Banner finden Sie in der folgenden Beispiel-App:

Adaptive Inline-Banner implementieren

Wenn Sie adaptive Inline-Banner implementieren möchten, legen Sie die Anzeigengröße fest, erstellen eine Anzeigenanfrage und laden die Anzeige.

Um die Größe eines adaptiven Inline-Banners festzulegen, bestimmen Sie die Anzeigenbreite. Dabei sind folgende Ansätze üblich:

  • Die gesamte Bildschirmbreite verwenden.
  • Die Breite des übergeordneten Layouts verwenden, das die Anzeige enthält.
  • Die Breite anpassen, um die sicheren Bereiche des Geräts zu berücksichtigen.

Verwenden Sie diese berechnete Breite, wenn Sie das Anzeigengrößenobjekt erstellen.

Gehen Sie folgendermaßen vor:

  1. Rufen Sie die Breite Ihres Geräts ab oder legen Sie eine Breite fest:

    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);
    }
    
  2. Verwenden Sie eine statische Methode für die Anzeigengrößenklasse, um ein Objekt für die Größe eines adaptiven Inline-Banners 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()));

Layout für adaptive Inline-Banner festlegen

Verwenden Sie die folgenden Methoden, um eine adaptive Inline-Banneranzeige für ein bestimmtes Layout vorzuladen:

Wenn Ihre App sowohl Hoch- als auch Querformat unterstützt und Sie eine adaptive Banneranzeige im aktuellen Layout vorladen möchten, verwenden Sie die AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width) Methode. Mit dieser Methode wird eine Anzeige im aktuellen Layout geladen.

Höhe adaptiver Inline-Banner begrenzen

Standardmäßig haben adaptive Inline-Banner, die ohne einen maxHeight-Wert erstellt wurden, eine maximale Höhe, 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.