Questa guida illustra l'integrazione dell'SDK IMA DAI in un'app video player. Se vuoi visualizzare o seguire un'integrazione di esempio completata, scarica PodServingExample da GitHub.
Panoramica di IMA DAI
L'implementazione di IMA DAI prevede quattro componenti principali dell'SDK, come illustrato in questa guida:
IMAAdDisplayContainer: un oggetto contenitore che si trova sopra l'elemento di riproduzione video e ospita gli elementi UI dell'annuncio.IMAAdsLoader: un oggetto che richiede stream e gestisce gli eventi attivati dagli oggetti di risposta alle richieste di stream. Devi creare un'istanza di un solo caricatore di annunci, che può essere riutilizzato per tutta la durata dell'applicazione.IMAStreamRequest:IMAPodVODStreamRequestoIMAPodStreamRequest.IMAStreamManager: un oggetto che gestisce gli stream di inserimento di annunci dinamici e le interazioni con il backend DAI. Il gestore degli stream gestisce anche i ping di monitoraggio e inoltra gli eventi di stream e annunci al publisher.
Inoltre, per riprodurre gli stream di pubblicazione di pod, implementa un gestore VTP personalizzato. Questo gestore VTP personalizzato invia l'ID stream al tuo partner tecnico video (VTP) insieme a tutte le altre informazioni necessarie per restituire un manifest dello stream contenente sia i contenuti sia gli annunci uniti. Il tuo VTP fornisce istruzioni su come implementare il gestore VTP personalizzato.
Prerequisiti
Prima di iniziare, devi disporre di quanto segue:
- Xcode 13 o versioni successive
- Metodo per l'installazione dell'SDK IMA:
- Swift Package Manager (opzione preferita)
- Una copia scaricata dell'SDK IMA per iOS
Inoltre, i parametri sono necessari per richiedere lo stream dall'SDK IMA.
| Parametri di live streaming | |
|---|---|
| Codice di rete |
Il codice di rete del tuo account Ad Manager 360. |
| Chiave asset personalizzata |
La chiave asset personalizzata che identifica l'evento di Pod Serving in Ad Manager 360. Viene creato dal manipolatore del manifest o dal partner di pubblicazione di pod di terze parti. |
| Parametri dello stream VOD | |
| Codice di rete |
Il codice di rete del tuo account Ad Manager 360. |
Crea un nuovo progetto Xcode
In Xcode, crea un nuovo progetto iOS utilizzando Objective-C denominato "PodServingExample".
Aggiungi l'SDK IMA DAI al progetto Xcode
Per installare l'SDK IMA, scegli un metodo preferito.
(Consigliato) Installa l'SDK utilizzando Swift Package Manager
L'SDK Interactive Media Ads supporta Swift Package Manager a partire dalla versione 3.18.4. Segui questi passaggi per importare il pacchetto Swift.
In Xcode, installa il pacchetto Swift dell'SDK IMA DAI: vai a File > Add Packages (File > Aggiungi pacchetti).
Nel prompt visualizzato, cerca il repository GitHub del pacchetto Swift dell'SDK IMA DAI:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-iosSeleziona la versione del pacchetto Swift dell'SDK IMA DAI che vuoi utilizzare. Per i nuovi progetti, utilizza Up to Next Major Version.
Al termine, Xcode risolve le dipendenze del pacchetto e le scarica in background. Per maggiori dettagli su come aggiungere dipendenze dei pacchetti, consulta l'articolo di Apple.
Scarica e installa manualmente l'SDK
Se non vuoi utilizzare Swift Package Manager, scarica e aggiungi manualmente l'SDK IMA al tuo progetto.
Crea un video player
Implementa un video player nel view controller principale; inserisci un AV player in una visualizzazione UI. L'SDK IMA utilizza la visualizzazione UI per mostrare gli elementi UI degli annunci display.
Objective-C
Swift
Inizializza il caricatore di annunci
Importa l'SDK IMA nel tuo view controller e adotta i protocolli IMAAdsLoaderDelegate e IMAStreamManagerDelegate per gestire gli eventi del caricatore di annunci e del gestore di stream.
Aggiungi queste proprietà private per archiviare i componenti chiave dell'SDK IMA:
IMAAdsLoader- Gestisce le richieste di stream per l'intero ciclo di vita della tua app.
IMAAdDisplayContainer- Gestisce l'inserimento e la gestione degli elementi dell'interfaccia utente degli annunci.
IMAAVPlayerVideoDisplay: comunica tra l'SDK IMA e il media player e gestisce i metadati temporizzati.IMAStreamManager: gestisce la riproduzione dello stream e attiva gli eventi correlati agli annunci.
Inizializza il caricatore di annunci, il contenitore di visualizzazione degli annunci e la visualizzazione video dopo il caricamento della visualizzazione.
Objective-C
Swift
Invia una richiesta di stream
Quando un utente preme il pulsante di riproduzione, effettua una nuova richiesta di stream.
Utilizza la classe IMAPodStreamRequest per i live streaming. Per gli stream VOD, utilizza la classe IMAPodVODStreamRequest.
La richiesta di stream richiede i parametri dello stream, nonché un riferimento al contenitore di visualizzazione degli annunci e alla visualizzazione video.
Objective-C
Swift
Ascolta gli eventi di caricamento dello stream
La classe IMAAdsLoader chiama i metodi IMAAdsLoaderDelegate in caso di inizializzazione riuscita o non riuscita della richiesta di stream.
Nel metodo delegato adsLoadedWithData, imposta IMAStreamManagerDelegate.
Passa l'ID stream al gestore VTP personalizzato e recupera l'URL del manifest dello stream. Per i live streaming, carica l'URL del manifest nella visualizzazione video e avvia la riproduzione. Per gli stream VOD, passa l'URL del manifest al metodo loadThirdPartyStream dello Stream Manager. Questo metodo richiede i dati sugli eventi degli annunci da Ad Manager 360, quindi carica l'URL del manifest e avvia la riproduzione.
Nel metodo delegato failedWithErrorData, registra l'errore. Se vuoi, riproduci lo stream di backup. Consulta le best practice per DAI.
Objective-C
Swift
Implementa il gestore VTP personalizzato
Il gestore VTP personalizzato invia l'ID stream dello spettatore al tuo partner tecnico video (VTP) insieme a qualsiasi altra informazione richiesta dal VTP per restituire un manifest dello stream contenente sia i contenuti sia gli annunci uniti. Il VTP fornisce istruzioni specifiche su come implementare il gestore VTP personalizzato.
Ad esempio, un VTP può includere un URL del modello del manifest contenente la macro [[STREAMID]]. In questo esempio, il gestore inserisce l'ID stream al posto della macro e restituisce l'URL del manifest risultante.
Objective-C
Swift
Ascolta gli eventi degli annunci
IMAStreamManager chiama i metodi IMAStreamManagerDelegate per passare gli eventi e gli errori dello stream alla tua applicazione.
Per questo esempio, registra gli eventi degli annunci principali nella console:
Objective-C
Swift
Esegui la pulizia degli asset IMA DAI
Per interrompere la riproduzione dello stream, interrompere tutto il monitoraggio degli annunci e rilasciare tutti gli asset dello stream caricati, chiama IMAStreamManager.destroy().
Esegui l'app. Se l'operazione va a buon fine, richiedi e riproduci gli stream DAI di Google con l'SDK IMA. Per scoprire di più sulle funzionalità più avanzate dell'SDK, consulta le altre guide elencate nella barra laterale a sinistra o gli esempi su GitHub.