Pakiety IMA SDK ułatwiają integrację reklam multimedialnych z witrynami i aplikacjami. Pakiety IMA SDK mogą wysyłać żądania reklam do dowolnego serwera reklam zgodnego z VAST i zarządzać odtwarzaniem reklam w aplikacjach. Za pomocą pakietów IMA DAI SDK aplikacje wysyłają żądanie strumienia reklamy i treści wideo – VOD lub treści na żywo. Pakiet SDK zwraca wtedy połączony strumień wideo, dzięki czemu nie musisz zarządzać przełączaniem między reklamą a treściami wideo w aplikacji.
Wybierz interesujące Cię rozwiązanie DAI
Wyświetlanie bloków reklamowych w ramach dynamicznego wstawiania reklam
Z tego przewodnika dowiesz się, jak zintegrować pakiet IMA DAI SDK z prostą aplikacją odtwarzacza wideo. Jeśli chcesz zobaczyć gotową przykładową integrację lub ją przeprowadzić, pobierz PodServingExample z GitHub.
Omówienie IMA DAI
Wdrażanie IMA DAI obejmuje 4 główne komponenty pakietu SDK, które zostały opisane w tym przewodniku:
IMAAdDisplayContainer
– obiekt kontenera, który znajduje się nad elementem odtwarzania wideo i zawiera elementy interfejsu reklamy.IMAAdsLoader
– obiekt, który wysyła żądania strumieni i obsługuje zdarzenia wywoływane przez obiekty odpowiedzi na żądanie strumienia. Należy utworzyć tylko jeden moduł wczytywania reklam, który można ponownie wykorzystywać przez cały okres działania aplikacji.IMAStreamRequest
–IMAPodVODStreamRequest
lubIMAPodStreamRequest
.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 przesyła zdarzenia strumienia i reklamy do wydawcy.
Dodatkowo, aby odtwarzać strumienie wyświetlania reklam w formie podcastów, musisz zaimplementować niestandardowy moduł obsługi VTP. Ten niestandardowy moduł obsługi VTP wysyła identyfikator strumienia do partnera technicznego ds. wideo (VTP) wraz z wszelkimi innymi informacjami, których potrzebuje on do zwrócenia manifestu strumienia zawierającego zarówno treści, jak i połączone reklamy. Dostawca platformy VTP przekaże Ci instrukcje dotyczące implementacji niestandardowego modułu obsługi VTP.
Wymagania wstępne
Zanim zaczniesz, musisz mieć:
- Xcode 13 lub nowszy
- CocoaPods (zalecane), Swift Package Manager lub pobrana kopia pakietu IMA DAI SDK na iOS
Potrzebujesz też parametrów używanych do przesyłania żądań strumienia z pakietu IMA SDK.
Parametry transmisji na żywo | |
---|---|
Kod sieci |
Kod sieci na koncie Ad Managera 360. |
Niestandardowy klucz pliku |
Niestandardowy klucz zasobu, który identyfikuje zdarzenie wyświetlania w ramach Pod Serving w usłudze Ad Manager 360. Może go utworzyć manipulator pliku manifestu lub partner zewnętrzny zajmujący się wyświetlaniem bloków reklamowych. |
Parametry strumienia VOD | |
Kod sieci |
Kod sieci na koncie Ad Managera 360. |
Tworzenie nowego projektu Xcode
W Xcode utwórz nowy projekt iOS w Objective-C o nazwie „PodServingExample”.
Dodawanie pakietu IMA DAI SDK do projektu w Xcode
Aby zainstalować pakiet IMA DAI SDK, użyj jednej z tych 3 metod.
Instalowanie pakietu SDK za pomocą CocoaPods (zalecane)
CocoaPods to menedżer zależności dla projektów Xcode. Jest to zalecana metoda instalowania pakietu IMA DAI SDK. Więcej informacji o instalowaniu i używaniu CocoaPods znajdziesz w dokumentacji CocoaPods. Po zainstalowaniu CocoaPods wykonaj te instrukcje, aby zainstalować pakiet IMA DAI SDK:
W tym samym katalogu, w którym znajduje się plik PodServingExample.xcodeproj, utwórz plik tekstowy o nazwie Podfile i dodaj tę konfigurację:
W katalogu zawierającym plik Podfile uruchom:
pod install --repo-update
Instalowanie pakietu SDK za pomocą menedżera pakietów Swift
Pakiet SDK do wyświetlania interaktywnych reklam medialnych obsługuje Swift Package Manager od wersji 3.18.4. Aby zaimportować pakiet Swift, wykonaj te czynności:
W Xcode zainstaluj pakiet IMA DAI SDK Swift, wybierając File > Add Packages (Plik > Dodaj pakiety).
W wyświetlonym oknie wyszukaj repozytorium pakietu IMA DAI SDK Swift Package GitHub:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-ios
Wybierz wersję pakietu IMA DAI SDK Swift Package, której chcesz używać. W przypadku nowych projektów zalecamy używanie opcji 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 artykule Apple.
Ręczne pobieranie i instalowanie pakietu SDK
Jeśli nie chcesz używać narzędzi Swift Package Manager ani CocoaPods, możesz pobrać pakiet IMA DAI SDK i ręcznie dodać go do projektu.
Tworzenie prostego odtwarzacza wideo
Zaimplementuj odtwarzacz wideo w głównym kontrolerze widoku, używając odtwarzacza AV opakowanego w widok interfejsu. Pakiet IMA SDK używa widoku interfejsu do wyświetlania elementów interfejsu reklamy.
Objective-C
Swift
Zainicjuj moduł wczytywania reklam.
Zaimportuj pakiet IMA SDK do kontrolera widoku i zastosuj protokoły
IMAAdsLoaderDelegate
i
IMAStreamManagerDelegate
do obsługi zdarzeń modułu wczytywania reklam i menedżera strumienia.
Dodaj te prywatne właściwości, aby przechowywać kluczowe komponenty pakietu IMA SDK:
IMAAdsLoader
– zarządza żądaniami strumieniowania przez cały okres działania aplikacji.IMAAdDisplayContainer
– obsługuje wstawianie elementów interfejsu użytkownika reklam i zarządzanie nimi.IMAAVPlayerVideoDisplay
– komunikuje się między pakietem IMA SDK a odtwarzaczem multimediów i obsługuje metadane czasowe.IMAStreamManager
– zarządza odtwarzaniem strumienia i wywołuje zdarzenia związane z reklamami.
Po wczytaniu widoku zainicjuj moduł wczytywania reklam, kontener wyświetlania reklam i wyświetlanie wideo.
Objective-C
Swift
Tworzenie żądania strumienia
Gdy użytkownik naciśnie przycisk odtwarzania, wyślij nowe żądanie strumienia.
Użyj klasy
IMAPodStreamRequest
w przypadku transmisji na żywo. W przypadku strumieni VOD użyj klasy IMAPodVODStreamRequest
.
Żądanie strumienia wymaga parametrów strumienia, a także odwołania 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 inicjalizacji lub niepowodzeniu żądania strumienia.
W metodzie delegata adsLoadedWithData
ustaw IMAStreamManagerDelegate
.
Przekaż identyfikator strumienia do niestandardowego modułu obsługi VTP i pobierz adres URL manifestu strumienia. W przypadku transmisji na żywo wczytaj adres URL pliku manifestu do wyświetlacza wideo i rozpocznij odtwarzanie. W przypadku strumieni VOD przekaż adres URL pliku manifestu do metody loadThirdPartyStream
menedżera strumieni. Ta metoda wysyła do Ad Managera 360 żądanie danych o zdarzeniach związanych z reklamami, a następnie wczytuje adres URL pliku manifestu i rozpoczyna odtwarzanie.
W metodzie delegata
failedWithErrorData
zarejestruj błąd. Opcjonalnie możesz odtworzyć strumień zapasowy. Zobacz sprawdzone metody DAI.
Objective-C
Swift
Wdrażanie niestandardowego modułu obsługi VTP
Niestandardowy moduł obsługi VTP wysyła identyfikator strumienia widza do Twojego partnera technicznego ds. wideo (VTP) wraz z wszelkimi innymi informacjami, których VTP potrzebuje do zwrócenia manifestu strumienia zawierającego zarówno treści, jak i połączone reklamy. Dostawca platformy weryfikacji tożsamości poda szczegółowe instrukcje dotyczące implementacji niestandardowego modułu obsługi platformy VTP.
Na przykład szablon VTP może zawierać adres URL szablonu manifestu z makrem [[STREAMID]]
. W tym przykładzie moduł obsługi wstawia identyfikator strumienia w miejsce makra i zwraca wynikowy adres URL pliku manifestu.
Objective-C
Swift
Nasłuchiwanie zdarzeń reklamowych
IMAStreamManager
wywołuje metody IMAStreamManagerDelegate
, aby przekazywać zdarzenia strumieniowe i błędy do aplikacji.
W tym przykładzie zaloguj w konsoli główne zdarzenia reklamy:
Objective-C
Swift
Czyszczenie zasobów IMA DAI
Aby zatrzymać odtwarzanie strumienia, zatrzymać śledzenie reklam i zwolnić wszystkie załadowane komponenty strumienia, wywołaj funkcję IMAStreamManager.destroy()
.
Uruchom aplikację. Jeśli wszystko przebiegnie prawidłowo, możesz wysyłać żądania strumieni Google DAI i je odtwarzać za pomocą pakietu IMA SDK. Więcej informacji o zaawansowanych funkcjach pakietu SDK znajdziesz w innych przewodnikach na pasku bocznym po lewej stronie lub w przykładach na GitHubie.