Ten przewodnik dotyczy integracji pakietu IMA DAI SDK z aplikacją odtwarzacza wideo. Jeśli chcesz zobaczyć lub prześledzić gotową przykładową integrację, pobierz BasicExample z GitHub.
Omówienie IMA DAI
Implementacja IMA DAI obejmuje 4 główne komponenty pakietu SDK, które opisujemy w tym przewodniku:
IMAAdDisplayContainer– obiekt kontenera, który znajduje się nad elementem odtwarzania filmu i zawiera elementy interfejsu reklamy.IMAAdsLoader– obiekt, który żąda strumieni i obsługuje zdarzenia wywoływane przez obiekty odpowiedzi na żądanie strumienia. Należy utworzyć tylko 1 instancję obiektu ads loader, którą można wielokrotnie wykorzystywać przez cały okres działania aplikacji.IMAStreamRequest–IMAVODStreamRequestlubIMALiveStreamRequest. Obiekt, który definiuje żądanie strumienia. Żądania strumieni mogą dotyczyć filmów na żądanie lub transmisji na żywo. Żądania transmisji na żywo określają klucz zasobu, a żądania VOD – identyfikator CMS i identyfikator filmu. Oba typy żądań mogą opcjonalnie zawierać klucz interfejsu API potrzebny do uzyskania dostępu do określonych strumieni oraz kod sieci Google Ad Managera, który umożliwia pakietowi IMA SDK obsługę identyfikatorów reklam zgodnie z ustawieniami Google Ad Managera.IMAStreamManager– obiekt, który obsługuje strumienie dynamicznego wstawiania reklam i interakcje z backendem DAI. Menedżer strumienia obsługuje też pingi śledzące i przekazuje wydawcy zdarzenia strumienia i reklamy.
Wymagania wstępne
Zanim zaczniesz, musisz mieć:
- Xcode 13 lub nowszy,
- Metoda instalacji pakietu IMA SDK:
- Swift Package Manager (preferowany)
- pobrana kopia pakietu IMA SDK na iOS,
Parametry są też potrzebne do wysyłania żądań strumienia z pakietu IMA SDK. Przykłady parametrów żądania znajdziesz w artykule Przykładowe strumienie.
| Parametry transmisji na żywo | |
|---|---|
| Klucz pliku |
Klucz pliku identyfikujący transmisję na żywo w usłudze Google Ad Manager. Przykład: c-rArva4ShKVIAkNfy6HUQ
|
| Parametry strumienia VOD | |
| Identyfikator źródła treści |
Identyfikator źródła treści z Google Ad Managera. Przykład: 2548831
|
| Identyfikator filmu |
Identyfikator filmu z Google Ad Managera. Przykład: tears-of-steel
|
| Parametry wspólne (VOD i transmisja na żywo) | |
| Kod sieci |
Twój kod sieci Google Ad Managera. Przykład: 21775744923
|
Tworzenie nowego projektu Xcode
W Xcode utwórz nowy projekt na iOS o nazwie „BasicExample” przy użyciu Objective-C.
Dodawanie pakietu IMA DAI SDK do projektu w Xcode
Aby zainstalować pakiet IMA SDK, wybierz preferowaną metodę.
Zalecane: zainstaluj pakiet SDK za pomocą narzędzia Swift Package Manager
Pakiet Interactive Media Ads SDK obsługuje Swift Package Manager od wersji 3.18.4. Aby zaimportować pakiet Swift, wykonaj te czynności.
W Xcode zainstaluj pakiet Swift IMA DAI SDK: kliknij File > Add Packages (Plik > Dodaj pakiety).
W wyświetlonym oknie wyszukaj repozytorium GitHub pakietu Swift IMA DAI SDK:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-iosWybierz wersję pakietu Swift pakietu IMA DAI SDK, której chcesz użyć. W przypadku nowych projektów użyj opcji Up to Next Major Version (Do następnej wersji głównej).
Gdy skończysz, Xcode przetworzy zależności pakietu i pobierze je w tle. Więcej informacji o dodawaniu zależności pakietów znajdziesz w tym artykule Apple.
Ręczne pobieranie i instalowanie pakietu SDK
Jeśli nie chcesz używać menedżera pakietów Swift, pobierz i ręcznie dodaj pakiet IMA SDK do projektu.
Tworzenie odtwarzacza wideo
Zaimplementuj odtwarzacz wideo w głównym kontrolerze widoku; umieść odtwarzacz AV w widoku interfejsu. Pakiet IMA SDK używa widoku interfejsu do wyświetlania elementów interfejsu reklamy displayowej.
Objective-C
Swift
Inicjowanie modułu ładowania reklam
Zaimportuj pakiet IMA SDK do kontrolera widoku i zastosuj protokoły IMAAdsLoaderDelegate i IMAStreamManagerDelegate, aby obsługiwać zdarzenia modułu do ładowania reklam i menedżera strumieni.
Dodaj te właściwości prywatne, aby przechowywać kluczowe komponenty pakietu IMA SDK:
IMAAdsLoader- Zarządza żądaniami strumieniowymi przez cały okres działania aplikacji.
IMAAdDisplayContainer- Zajmuje się wstawianiem elementów interfejsu reklam i zarządzaniem nimi.
IMAAVPlayerVideoDisplay– komunikuje się między pakietem IMA SDK a odtwarzaczem multimedialnym i obsługuje metadane z sygnaturą czasową.IMAStreamManager– zarządza odtwarzaniem transmisji i wywołuje zdarzenia związane z reklamami.
Po wczytaniu widoku zainicjuj moduł ładowania reklam, kontener wyświetlania reklam i wyświetlanie filmu.
Objective-C
Swift
Wysyłanie żądania strumienia
Gdy użytkownik naciśnie przycisk odtwarzania, wyślij nowe żądanie strumienia.
W przypadku transmisji na żywo używaj klasy IMALiveStreamRequest. W przypadku strumieni VOD użyj klasy IMAVODStreamRequest.
Żądanie strumienia wymaga parametrów strumienia oraz odniesienia do kontenera wyświetlania reklam i wyświetlania wideo.
Objective-C
Swift
Nasłuchiwanie zdarzeń wczytywania strumienia
Klasa IMAAdsLoader wywołuje metody IMAAdsLoaderDelegate po udanej lub nieudanej inicjalizacji żądania strumienia.
W metodzie delegowanej adsLoadedWithData ustaw IMAStreamManagerDelegate.
Zainicjuj menedżera strumieni. Po zainicjowaniu menedżer strumienia rozpoczyna odtwarzanie.
W metodzie delegowanej failedWithErrorData zarejestruj błąd. Opcjonalnie możesz odtworzyć strumień zapasowy. Zobacz sprawdzone metody dotyczące DAI.
Objective-C
Swift
Nasłuchiwanie zdarzeń reklamowych
IMAStreamManager wywołuje metody IMAStreamManagerDelegate, aby przekazywać zdarzenia i błędy strumienia do aplikacji.
W tym przykładzie zarejestruj zdarzenia dotyczące reklamy głównej w konsoli:
Objective-C
Swift
Uruchom aplikację. Jeśli wszystko działa, poproś o strumienie DAI Google i odtwórz je za pomocą pakietu IMA SDK. Aby dowiedzieć się więcej o bardziej zaawansowanych funkcjach pakietu SDK, zapoznaj się z innymi przewodnikami wymienionymi na pasku bocznym po lewej stronie lub z przykładami na GitHubie.