Dieser Leitfaden richtet sich an Publisher, die Companion-Anzeigen in ihre Android IMA-Implementierung einfügen möchten.
Vorbereitung
- Android-App mit integriertem IMA SDK Wenn Sie noch keine App mit integriertem SDK haben, sehen Sie sich das BasicExample an. Wenn Sie Hilfe bei der Implementierung des IMA SDK in Ihrer App benötigen, lesen Sie den Hilfeartikel IMA SDK einrichten.
- Ein Anzeigen-Tag, das so konfiguriert ist, dass eine Companion-Anzeige zurückgegeben wird. Wenn Sie ein Beispiel benötigen, sehen Sie sich unsere FAQs an.
Begleit-Anzeigen in Ihre App einfügen
Folgen Sie der Anleitung, um einen Companion-Anzeigen-Slot hinzuzufügen und Companion-Anzeigen in Ihrer App auszuliefern.
ViewGroup zum Anzeigen des Companion erstellen
Bevor Sie einen Companion anfordern, müssen Sie in Ihrem Layout einen Bereich dafür erstellen. Fügen Sie in Ihrem Layout-XML ein ViewGroup-Element hinzu. In diesem Beispiel wird ein LinearLayout verwendet. In einem späteren Schritt übergeben Sie einen Verweis auf dieses Element an Ihre AdDisplayContainer.
Wenn Sie die Integration in die BasicExample-App vornehmen, fügen Sie dies in der Datei activity_my.xml unterhalb von videoPlayerContainer ein.
<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" />
CompanionAdSlot erstellen
Als Nächstes erstellen Sie ein CompanionAdSlot-Objekt, das dann einer ArrayList<CompanionAdSlot>-Instanz hinzugefügt wird.
Die AdDisplayContainer-Schnittstelle akzeptiert eine Liste von Companion-Anzeigenflächen, sodass Sie mehrere Companion-Anzeigen gleichzeitig präsentieren können. Sie müssen eine Instanz der Klasse ImaSdkFactory erstellen, um das CompanionAdSlot-Objekt zu erstellen.
public void createCompanionAdSlot(ViewGroup companionViewGroup) {
ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot(companionViewGroup);
companionAdSlot.setSize(300, 250);
ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>();
companionAdSlots.add(companionAdSlot);
}
Erstellen Sie für jede Companion-Größe, die in Ihrer App ausgeliefert werden soll, eine Companion-Anzeigenfläche. Das IMA SDK füllt die Companion-Anzeigenfläche mit allen Companion-Anzeigen aus der VAST-Antwort, deren Abmessungen mit der Höhe und Breite der Ansicht übereinstimmen.
Das IMA SDK unterstützt auch die Verwendung von flexiblen Companion-Anzeigen.
Nachdem Sie die companionAdSlots erstellt haben, fügen Sie sie der AdsLoader hinzu. In den folgenden Beispielen wird gezeigt, wie Sie das tun, je nachdem, ob Sie die Exoplayer-IMA-Erweiterung oder andere IMA-Implementierungen ohne die Erweiterung verwenden.
ExoPlayer-IMA-Erweiterung
public void setCompanionAdSlotExoPlayer(
Context context, ArrayList<CompanionAdSlot> companionAdSlots) {
ImaAdsLoader adsLoader =
new ImaAdsLoader.Builder(context).setCompanionAdSlots(companionAdSlots).build();
}
Sonstige Implementierungen
public void setCompanionAdSlot(
AdDisplayContainer adDisplayContainer, ArrayList<CompanionAdSlot> companionAdSlots) {
adDisplayContainer.setCompanionSlots(companionAdSlots);
}
Das ist keine Kunst! In Ihrer Anwendung werden jetzt Companion-Anzeigen ausgeliefert.
Companion-Anzeigen mit fließendem Layout ausliefern
Das IMA SDK unterstützt flexible Companion-Anzeigen. Die Größe dieser Companion-Anzeigen kann an die Größe der Anzeigenfläche angepasst werden. Sie füllen die gesamte Breite der übergeordneten Ansicht aus und passen dann ihre Höhe an den Inhalt des Companion-Banners an. Sie werden in Ad Manager über die FluidCompanion-Größe festgelegt. Die folgende Abbildung zeigt, wo Sie diesen Wert festlegen können.

Android-Apps für flüssige Begleitgeräte aktualisieren
Sie können einen responsiven Companion-Slot deklarieren, indem Sie die Methode CompanionAdSlot.setSize() so aktualisieren, dass CompanionAdSlot.FLUID_SIZE als beide Parameter verwendet wird.
companionAdSlot.setSize(CompanionAdSlot.FLUID_SIZE, CompanionAdSlot.FLUID_SIZE);
FAQ
- Ich habe die Anleitung befolgt, sehe aber keine Companion-Anzeigen. Was soll ich tun?
- Prüfen Sie zuerst, ob mit Ihrem Tag tatsächlich Begleit-Creatives ausgeliefert werden. Öffnen Sie dazu das Tag in einem Webbrowser und suchen Sie nach einem
<CompanionAds>-Tag. Wenn das der Fall ist, prüfen Sie, ob die Größe des zurückgegebenen Companion-Creatives mit den Abmessungen übereinstimmt, die Sie an dasCompanionAdSlot-Objekt übergeben. - Wie sieht die Companion-Anzeigenfläche aus, wenn ich dieser Anleitung folge?
Das folgende Bild wurde aus dem BasicExample erstellt. Das Content-Video wird oben und die Companion-Anzeige unten wiedergegeben.