Mit IMA SDKs lassen sich Multimedia-Anzeigen ganz einfach in Websites und Apps einbinden. Mit IMA SDKs können Anzeigen von jedem VAST-kompatiblen Ad-Server angefordert und die Anzeigenwiedergabe in Ihren Apps verwaltet werden. Mit IMA DAI SDKs senden Apps eine Streamanfrage für Anzeigen- und Videoinhalte – entweder VOD- oder Liveinhalte. Das SDK gibt dann einen kombinierten Videostream zurück, sodass Sie in Ihrer App nicht zwischen Anzeigen- und Inhaltsvideo wechseln müssen.
Wählen Sie die gewünschte dynamische Anzeigenbereitstellungslösung aus.
Pod-Auslieferung mit dynamischer Anzeigenbereitstellung
In dieser Anleitung wird gezeigt, wie du das IMA DAI SDK in eine einfache Videoplayer-App einbindest. Wenn du dir eine fertige Beispielintegration ansehen oder ansehen möchtest, lade das PodServingExample von GitHub herunter.
IMA DAI – Übersicht
Die Implementierung von IMA-DA umfasst vier Haupt-SDK-Komponenten, wie in diesem Leitfaden gezeigt:
IMAAdDisplayContainer
: Ein Containerobjekt, das sich über dem Videowiedergabeelement befindet und die UI-Elemente der Anzeige enthält.IMAAdsLoader
: Ein Objekt, das Streams anfordert und Ereignisse verarbeitet, die durch Antwortobjekte von Streamanfragen ausgelöst werden. Sie sollten nur einen Anzeigen-Lademechanismus instanziieren, der während der gesamten Lebensdauer der Anwendung wiederverwendet werden kann.IMAStreamRequest
– entwederIMAPodVODStreamRequest
oderIMAPodStreamRequest
.IMAStreamManager
: Ein Objekt, das Streams für die dynamische Anzeigenbereitstellung und Interaktionen mit dem DAI-Backend verarbeitet. Der Streammanager verarbeitet auch Tracking-Pings und leitet Stream- und Anzeigenereignisse an den Publisher weiter.
Außerdem musst du einen benutzerdefinierten VTP-Handler implementieren, um Streams mit Pod-Auslieferung abzuspielen. Dieser benutzerdefinierte VTP-Handler sendet die Stream-ID zusammen mit allen anderen Informationen an deinen VTP, die für die Rückgabe eines Stream-Manifests mit Inhalten und zusammengefügten Anzeigen erforderlich sind. Ihre VTP enthält eine Anleitung zum Implementieren Ihres benutzerdefinierten VTP-Handlers.
Vorbereitung
Für den Start ist Folgendes erforderlich:
- Xcode 13 oder höher
- CocoaPods (bevorzugt), Swift Package Manager oder eine heruntergeladene Kopie des IMA DAI SDK für iOS
Außerdem benötigst du die Parameter, mit denen dein Stream vom IMA SDK angefordert wird.
Livestream-Parameter | |
---|---|
Netzwerkcode |
Der Netzwerkcode Ihres Ad Manager 360-Kontos. Beispiel: 51636543
|
Benutzerdefinierter Asset-Schlüssel |
Der benutzerdefinierte Asset-Schlüssel, mit dem das Pod-Auslieferungsereignis in Ad Manager 360 identifiziert wird. Dieser kann von deinem Manifest-Bearbeiter oder deinem Pod-Auslieferungspartner erstellt werden. Beispiel: google-sample
|
VOD-Streamparameter | |
Netzwerkcode |
Der Netzwerkcode Ihres Ad Manager 360-Kontos. Beispiel: 51636543
|
Neues Xcode-Projekt erstellen
Erstellen Sie in Xcode ein neues iOS-Projekt mit Objective-C namens „PodServingExample“.
IMA DAI SDK zum Xcode-Projekt hinzufügen
Verwenden Sie eine dieser drei Methoden, um das IMA DAI SDK zu installieren.
SDK mit CocoaPods installieren (bevorzugt)
CocoaPods ist ein Abhängigkeitsmanager für Xcode-Projekte und die empfohlene Methode zum Installieren des IMA DAI SDK. Weitere Informationen zur Installation oder Verwendung von CocoaPods finden Sie in der CocoaPods-Dokumentation. Nachdem du CocoaPods installiert hast, kannst du das IMA DAI SDK mithilfe der folgenden Anleitung installieren:
Erstellen Sie im selben Verzeichnis wie die Datei PodServingExample.xcodeproj eine Textdatei namens Podfile und fügen Sie die folgende Konfiguration hinzu:
Führen Sie im Verzeichnis mit der Podfile Folgendes aus:
pod install --repo-update
SDK mit dem Swift Package Manager installieren
Das Interactive Media Ads SDK unterstützt ab Version 3.18.4 den Swift Package Manager. Folgen Sie der Anleitung unten, um das Swift-Paket zu importieren.
Installiere in Xcode das IMA DAI SDK-Swift-Paket. Gehe dazu zu File > Add Packages (Datei > Pakete hinzufügen).
Suche in der angezeigten Aufforderung nach dem GitHub-Repository für das IMA DAI SDK Swift-Paket:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-ios
Wähle die Version des IMA DAI SDK Swift-Pakets aus, die du verwenden möchtest. Für neue Projekte empfehlen wir die Option Bis zur nächsten Hauptversion.
Wenn Sie fertig sind, löst Xcode Ihre Paketabhängigkeiten auf und lädt sie im Hintergrund herunter. Weitere Informationen zum Hinzufügen von Paketabhängigkeiten finden Sie im Artikel von Apple.
SDK manuell herunterladen und installieren
Wenn Sie den Swift Package Manager oder CocoaPods nicht verwenden möchten, können Sie das IMA DAI SDK herunterladen und Ihrem Projekt manuell hinzufügen.
Einfachen Videoplayer erstellen
Implementieren Sie einen Videoplayer in Ihrem Haupt-View-Controller, indem Sie einen AV-Player in einer UI-Ansicht einbetten. Das IMA SDK verwendet die UI-Ansicht, um Anzeigen-UI-Elemente anzuzeigen.
Anzeigen-Ladeprogramm initialisieren
Importiere das IMA SDK in deinen View Controller und verwende die Protokolle IMAAdsLoaderDelegate
und IMAStreamManagerDelegate
, um Ereignisse des Anzeigen-Ladeprogramms und des Stream-Managers zu verarbeiten.
Füge diese privaten Properties hinzu, um wichtige IMA SDK-Komponenten zu speichern:
IMAAdsLoader
: Verwaltet Streamanfragen während der gesamten Lebensdauer deiner App.IMAAdDisplayContainer
: Verwaltet das Einfügen und Verwalten von Elementen der Anzeigenbenutzeroberfläche.IMAAVPlayerVideoDisplay
: Vermittelt die Kommunikation zwischen dem IMA SDK und dem Mediaplayer und verarbeitet zeitgesteuerte Metadaten.IMAStreamManager
: Verwaltet die Streamwiedergabe und löst anzeigebezogene Ereignisse aus.
Initiiere den Anzeigen-Lademechanismus, den Anzeigen-Displaycontainer und das Videodisplay, nachdem der Videofeed geladen wurde.
Streamanfrage stellen
Wenn ein Nutzer auf die Wiedergabeschaltfläche drückt, sende eine neue Streamanfrage.
Verwenden Sie die Klasse IMAPodStreamRequest
für Livestreams. Verwende für VOD-Streams die Klasse IMAPodVODStreamRequest
.
Die Streamanfrage erfordert deine Streamparameter sowie eine Referenz auf deinen Anzeigendisplaycontainer und dein Videodisplay.
Auf Stream-Ladevorgänge warten
Die Klasse IMAAdsLoader
ruft die Methoden IMAAdsLoaderDelegate
bei erfolgreicher Initialisierung oder Fehler der Streamanfrage auf.
Legen Sie in der Delegating-Methode adsLoadedWithData
den Wert für IMAStreamManagerDelegate
fest.
Übergebe die Stream-ID an deinen benutzerdefinierten VTP-Handler und rufe die Manifest-URL des Streams ab. Lade bei Livestreams die Manifest-URL in deinen Video-Bildschirm und starte die Wiedergabe. Übergebe bei VOD-Streams die Manifest-URL an die loadThirdPartyStream
-Methode des Stream-Managers. Bei dieser Methode werden Anzeigenereignisdaten von Ad Manager 360 angefordert, die Manifest-URL geladen und die Wiedergabe gestartet.
Protokollieren Sie den Fehler in der delegierten Methode failedWithErrorData
. Optional: Wiedergabe des Sicherungsstreams Best Practices für dynamische Anzeigenbereitstellung
Benutzerdefinierten VTP-Handler implementieren
Der benutzerdefinierte VTP-Handler sendet die Stream-ID des Betrachters zusammen mit allen anderen Informationen, die dein VTP benötigt, um ein Stream-Manifest zurückzugeben, das sowohl Inhalte als auch zusammengeführte Anzeigen enthält, an deinen VTP. Ihr VTP enthält eine spezifische Anleitung zur Implementierung Ihres benutzerdefinierten VTP-Handlers.
Eine VTP kann beispielsweise eine Manifest-Vorlagen-URL mit dem Makro [[STREAMID]]
enthalten. In diesem Beispiel fügt der Handler die Stream-ID anstelle des Makros ein und gibt die resultierende Manifest-URL zurück.
Auf Anzeigenereignisse warten
Die IMAStreamManager
ruft die Methoden IMAStreamManagerDelegate
auf, um Streamereignisse und ‑fehler an Ihre Anwendung weiterzuleiten.
Protokollieren Sie in diesem Beispiel die wichtigsten Anzeigenereignisse in der Konsole:
IMA-DAI-Assets bereinigen
Wenn du die Streamwiedergabe beenden, alle Anzeigen-Tracking-Mechanismen stoppen und alle geladenen Stream-Assets freigeben möchtest, ruf IMAStreamManager.destroy()
auf.
Führen Sie Ihre App aus. Wenn die Ausführung erfolgreich war, können Sie Google-Streams für die dynamische Anzeigenbereitstellung mit dem IMA SDK anfordern und wiedergeben. Weitere Informationen zu erweiterten SDK-Funktionen finden Sie in den anderen Anleitungen in der linken Seitenleiste oder in den Beispielen auf GitHub.