Companion-Anzeigen

Dieser Leitfaden richtet sich an Publisher, die Companion-Anzeigen zu ihrer Android IMA-Implementierung hinzufügen möchten.

Voraussetzungen

  • Android-App mit integriertem IMA SDK Wenn Sie noch keine App mit integriertem SDK haben, sehen Sie sich das BasicExample an.
  • Ein Anzeigen-Tag, das so konfiguriert ist, dass eine Companion-Anzeige zurückgegeben wird.

Hilfreiche Primer

Wenn Sie das IMA SDK noch in Ihrer App implementieren müssen, lesen Sie unseren Startleitfaden.

Companion-Anzeigen zur App hinzufügen

Erstellen Sie eine ViewGroup, um Ihre Companion-Anzeige anzuzeigen.

Bevor Sie eine Companion-Anzeige anfordern können, müssen Sie in Ihrem Layout einen Bereich dafür erstellen. Fügen Sie in die Layout-XML-Datei ein ViewGroup-Element ein. In diesem Beispiel wird ein LinearLayout-Element verwendet. In einem späteren Schritt übergeben Sie einen Verweis auf dieses Element an Ihre AdDisplayContainer. Wenn Sie eine Integration in die BasicExample-Anwendung vornehmen, fügen Sie dies in activity_my.xml unter com.google.android.exoplayer2.ui.PlayerView ein.

activity_my.xml

<LinearLayout
  android:id="@+id/companionAdSlot"
  android:layout_width="match_parent"
  android:layout_height="250dp"
  android:layout_gravity="center_horizontal"
  android:gravity="center"
  android:orientation="vertical"
  android:textAlignment="center" />

Companion-Anzeigenfläche erstellen

Im nächsten Schritt erstellen Sie ein CompanionAdSlot-Objekt, das dann einem ArrayList<CompanionAdSlot>-Element hinzugefügt wird. AdDisplayContainer erstellt eine Liste von Companion-Anzeigenflächen, sodass Sie mehrere Companion-Anzeigen gleichzeitig ausliefern können. Sie müssen eine Instanz von ImaSdkFactory erstellen, um den CompanionAdSlot zu erstellen.

  ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
  ViewGroup companionViewGroup = (ViewGroup) findViewById(R.id.companionAdSlot);

  CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot();
  companionAdSlot.setContainer(companionViewGroup);
  companionAdSlot.setSize(300, 250);
  ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>();
  companionAdSlots.add(companionAdSlot);

Erstellen Sie eine Companion-Anzeigenfläche für jede Companion-Größe, die in Ihrer App ausgeliefert werden soll. Das IMA SDK füllt die Companion-Anzeigenfläche mit beliebigen Companions aus der VAST-Antwort, deren Abmessungen der Höhe und Breite der Ansicht entsprechen. Das IMA SDK unterstützt auch die Verwendung von Companions mit flexibler Größe. Nachdem Sie die companionAdSlots erstellt haben, müssen sie der AdsLoader hinzugefügt werden. Die folgenden Beispiele zeigen, wie dies funktioniert, je nachdem, ob du IMA Android BasicExample mit der Exoplayer-IMA-Erweiterung oder andere IMA-Implementierungen ohne die Erweiterung verwendest.

BasicExample

adsLoader = new ImaAdsLoader.Builder(this).setCompanionAdSlots(companionAdSlots).build();

Sonstige Implementierungen

adsLoader.getAdDisplayContainer().setCompanionSlots(companionAdSlots);

Das ist keine Kunst! Ihre Anwendung zeigt jetzt Companion-Anzeigen an.

Companion-Anzeigen mit flexibler Größe schalten

IMA unterstützt jetzt flexible Companion-Anzeigen. Die Größe dieser Companion-Anzeigen kann an die Größe der Anzeigenfläche angepasst werden. Sie füllen 100% der Breite der übergeordneten Ansicht aus und passen dann die Höhe an den Inhalt des Companions an. Sie werden in Ad Manager mit der Companion-Größe Fluid festgelegt. In der folgenden Abbildung sehen Sie, wo dieser Wert festgelegt wird.

Bild mit den Einstellungen für Companion-Anzeigen in Ad Manager. Markiert die Option für Companion-Größen.

Android-Apps für flexible Companions aktualisieren

Sie können eine flexible Companion-Fläche angeben, indem Sie die Methode CompanionAdSlot.setSize() so aktualisieren, dass CompanionAdSlot.FLUID_SIZE als beide Parameter verwendet wird.

  ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
  ViewGroup companionViewGroup = (ViewGroup) findViewById(R.id.companionAdSlot);

  CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot();
  companionAdSlot.setContainer(companionViewGroup);
  companionAdSlot.setSize(CompanionAdSlot.FLUID_SIZE, CompanionAdSlot.FLUID_SIZE);
  ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>();
  companionAdSlots.add(companionAdSlot);

Häufig gestellte Fragen

Ich habe die Anleitung befolgt, kann aber keine Companion-Anzeigen sehen. Was kann ich tun?
Überprüfen Sie zuerst, ob das Tag wirklich Companions zurückgibt. Öffnen Sie dazu das Tag in einem Webbrowser und suchen Sie nach einem CompanionAds-Tag. Achten Sie in diesem Fall darauf, dass die Größe des zurückgegebenen Companion mit der Größe der Abmessungen übereinstimmt, die Sie an das CompanionAdSlot-Objekt übergeben.
Wie wird meine Companion-Anzeigenfläche aussehen, wenn ich diese Anleitung durcharbeite?
Das Bild unten wurde aus dem BasicExample erstellt und zeigt das Contentvideo oben mit der Companion-Anzeige darunter.

Beispielbild für IMA-Android-Companion-Anzeige