Mit den IMA SDKs lassen sich Multimedia-Anzeigen ganz einfach in Ihre Websites und Apps einbinden. Mit IMA SDKs können Anzeigen von jedem VAST-konformen Ad-Server angefordert und die Anzeigenwiedergabe in Ihren Apps verwaltet werden. Mit IMA DAI SDKs senden Apps eine Streamanfrage für Anzeigen- und Content-Videos – entweder VOD- oder Liveinhalte. Das SDK gibt dann einen kombinierten Videostream zurück, sodass Sie das Umschalten zwischen Anzeigen- und Inhaltsvideo in Ihrer App nicht verwalten müssen.
Wählen Sie die DAI-Lösung aus, die Sie interessiert.
Pod-Auslieferung mit dynamischer Anzeigenbereitstellung
In diesem Leitfaden wird beschrieben, wie Sie das IMA DAI SDK in eine Videoplayer-App einbinden. Wenn Sie sich ein Beispiel für eine vollständige Einbindung ansehen oder es nachvollziehen möchten, laden Sie PodServingExample von GitHub herunter.
IMA DAI – Übersicht
Die Implementierung von IMA DAI umfasst vier Haupt-SDK-Komponenten, wie in diesem Leitfaden beschrieben:
IMAAdDisplayContainer: Ein Containerobjekt, das sich über dem Element für die Videowiedergabe befindet und die UI-Elemente der Anzeige enthält.IMAAdsLoader– Ein Objekt, das Streams anfordert und Ereignisse verarbeitet, die durch Antwortobjekte für Streamanfragen ausgelöst werden. Sie sollten nur einen Anzeigen-Loader instanziieren, der während der gesamten Lebensdauer der Anwendung wiederverwendet werden kann.IMAStreamRequest– entweder eineIMAPodVODStreamRequestoder eineIMAPodStreamRequest.IMAStreamManager: Ein Objekt, das Streams für die dynamische Anzeigenbereitstellung und Interaktionen mit dem DAI-Backend verarbeitet. Der Stream-Manager verarbeitet auch Tracking-Pings und leitet Stream- und Anzeigenereignisse an den Publisher weiter.
Außerdem müssen Sie einen benutzerdefinierten VTP-Handler implementieren, um Streams mit Pod-Serving abzuspielen. Dieser benutzerdefinierte VTP-Handler sendet die Stream-ID an Ihren Video-Technologiepartner (VTP) sowie alle anderen Informationen, die er benötigt, um ein Stream-Manifest mit Inhalten und eingefügten Anzeigen zurückzugeben. Ihr VTP enthält eine Anleitung zur Implementierung Ihres benutzerdefinierten VTP-Handlers.
Vorbereitung
Für den Start ist Folgendes erforderlich:
- Xcode 13 oder höher
- Methode zum Installieren des IMA SDK:
- Swift Package Manager (bevorzugt)
- Eine Downloadkopie des IMA SDK für iOS
Außerdem benötigen Sie die Parameter, um Ihren Stream über das IMA SDK anzufordern.
| Livestream-Parameter | |
|---|---|
| Netzwerkcode |
Der Netzwerkcode für Ihr Ad Manager 360-Konto. |
| Benutzerdefinierter Assetschlüssel |
Der benutzerdefinierte Asset-Schlüssel, mit dem Ihr Pod-Serving-Ereignis in Ad Manager 360 identifiziert wird. Das Manifest wird von Ihrem Manifestbearbeitungstool oder einem Drittanbieterpartner für die Pod-Auslieferung erstellt. |
| VOD-Streamparameter | |
| Netzwerkcode |
Der Netzwerkcode für Ihr Ad Manager 360-Konto. |
Neues Xcode-Projekt erstellen
Erstellen Sie in Xcode ein neues iOS-Projekt mit Objective-C mit dem Namen „PodServingExample“.
IMA DAI SDK zum Xcode-Projekt hinzufügen
Wählen Sie eine bevorzugte Methode aus, um das IMA SDK zu installieren.
Empfohlen: SDK mit Swift Package Manager installieren
Das Interactive Media Ads SDK unterstützt ab Version 3.18.4 den Swift Package Manager. So importieren Sie das Swift-Paket:
Installieren Sie in Xcode das IMA DAI SDK-Swift-Paket: Gehen Sie zu File > Add Packages.
Suchen Sie im angezeigten Prompt nach dem GitHub-Repository für das IMA DAI SDK Swift Package:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-iosWählen Sie die Version des IMA DAI SDK Swift Package aus, die Sie verwenden möchten. Verwenden Sie für neue Projekte die Option Bis zur nächsten Hauptversion.
Anschließend löst Xcode die Paketabhängigkeiten auf und lädt sie im Hintergrund herunter. Weitere Informationen zum Hinzufügen von Paketabhängigkeiten finden Sie in diesem Artikel von Apple.
SDK manuell herunterladen und installieren
Wenn Sie Swift Package Manager nicht verwenden möchten, laden Sie das IMA SDK herunter und fügen Sie es Ihrem Projekt manuell hinzu.
Videoplayer erstellen
Implementieren Sie einen Videoplayer in Ihrem Haupt-View-Controller. Umschließen Sie einen AV-Player mit einer UI-Ansicht. Das IMA SDK verwendet die UI-Ansicht, um UI-Elemente für Anzeigen zu rendern.
Objective-C
Swift
Anzeigenladeprogramm initialisieren
Importieren Sie das IMA SDK in Ihren View-Controller und übernehmen Sie die Protokolle IMAAdsLoaderDelegate und IMAStreamManagerDelegate, um Ereignisse des Anzeigenladers und des Stream-Managers zu verarbeiten.
Fügen Sie diese privaten Eigenschaften hinzu, um wichtige IMA SDK-Komponenten zu speichern:
IMAAdsLoader- Verwaltet Streamanfragen während der gesamten Lebensdauer Ihrer App.
IMAAdDisplayContainer- Verarbeitet das Einfügen und Verwalten von Benutzeroberflächenelementen für Anzeigen.
IMAAVPlayerVideoDisplay: Stellt die Kommunikation zwischen dem IMA SDK und Ihrem Media-Player her und verarbeitet zeitgesteuerte Metadaten.IMAStreamManager: Verwaltet die Streamwiedergabe und löst werbebezogene Ereignisse aus.
Initialisieren Sie das Anzeigenladeprogramm, den Anzeigen-Container und die Videoanzeige nach dem Laden der Ansicht.
Objective-C
Swift
Streaminganfrage stellen
Wenn ein Nutzer auf die Schaltfläche „Wiedergabe“ drückt, senden Sie eine neue Streamanfrage.
Verwende die Klasse IMAPodStreamRequest für Livestreams. Verwenden Sie für VOD-Streams die Klasse IMAPodVODStreamRequest.
Für die Streamanfrage sind Ihre Streamparameter sowie ein Verweis auf Ihren Anzeigencontainer und Ihre Videoanzeige erforderlich.
Objective-C
Swift
Auf Stream-Ladeereignisse warten
Die Klasse IMAAdsLoader ruft die Methoden IMAAdsLoaderDelegate auf, wenn die Streamanfrage erfolgreich initialisiert wird oder fehlschlägt.
Legen Sie in der Delegatenmethode adsLoadedWithData IMAStreamManagerDelegate fest.
Übergeben Sie die Stream-ID an Ihren benutzerdefinierten VTP-Handler und rufen Sie die Stream-Manifest-URL ab. Lade für Livestreams die Manifest-URL in deine Videowiedergabe und starte die Wiedergabe. Bei VOD-Streams übergeben Sie die Manifest-URL an die loadThirdPartyStream-Methode des Stream-Managers. Bei dieser Methode werden Anzeigenereignisdaten von Ad Manager 360 angefordert, dann wird die Manifest-URL geladen und die Wiedergabe gestartet.
Protokollieren Sie den Fehler in der Delegatenmethode failedWithErrorData. Optional: Spielen Sie den Backup-Stream ab. Best Practices für DAI
Objective-C
Swift
Benutzerdefinierten VTP-Handler implementieren
Der benutzerdefinierte VTP-Handler sendet die Stream-ID des Zuschauers an Ihren Video-Technikpartner (VTP) sowie alle anderen Informationen, die Ihr VTP benötigt, um ein Stream-Manifest mit Inhalten und eingefügten Anzeigen zurückzugeben. Ihr VTP enthält eine genaue Anleitung zur Implementierung Ihres benutzerdefinierten VTP-Handlers.
Ein VTP kann beispielsweise eine Manifestvorlagen-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.
Objective-C
Swift
Auf Anzeigenereignisse warten
Mit IMAStreamManager werden die Methoden IMAStreamManagerDelegate aufgerufen, um Streamereignisse und ‑fehler an Ihre Anwendung zu übergeben.
In diesem Beispiel werden die primären Anzeigenereignisse in der Konsole protokolliert:
Objective-C
Swift
IMA DAI-Assets bereinigen
Wenn Sie die Streamwiedergabe beenden, das gesamte Anzeigen-Tracking beenden und alle geladenen Stream-Assets freigeben möchten, rufen Sie IMAStreamManager.destroy() auf.
Führen Sie Ihre App aus. Wenn das funktioniert, fordern Sie Google-Streams für die dynamische Anzeigenbereitstellung mit dem IMA SDK an und spielen Sie sie ab. Weitere Informationen zu erweiterten SDK-Funktionen finden Sie in den anderen Anleitungen in der linken Seitenleiste oder in den Beispielen auf GitHub.