Pakiety IMA SDK ułatwiają integrację reklam multimedialnych z witrynami i aplikacjami. Pakiety IMA SDK mogą żądać reklam z dowolnego serwera reklam zgodnego z VAST i zarządzać odtwarzaniem reklam w aplikacjach. Dzięki pakietom IMA DAI SDK aplikacje wysyłają żądanie strumienia reklamy i treści wideo (VOD lub treści na żywo). Pakiet SDK zwraca następnie połączony strumień wideo, dzięki czemu nie musisz zarządzać przełączaniem się między reklamą a filmem z treściami w aplikacji.
Wybierz interesujące Cię rozwiązanie DAI
Wyświetlanie bloków reklamowych w ramach dynamicznego wstawiania reklam
Ten przewodnik pokazuje, jak zintegrować pakiet IMA DAI SDK z prostą aplikacją odtwarzacza wideo. Jeśli chcesz zobaczyć lub prześledzić przykładową integrację, pobierz PodServingExample z GitHuba.
Omówienie IMA DAI
Wdrożenie interfejsu IMA DAI wymaga 4 głównych komponentów pakietu SDK, jak opisano 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 żądania strumienia. Należy utworzyć tylko 1 ładowarkę reklam, którą można ponownie użyć w trakcie działania aplikacji.IMAStreamRequest
– może to byćIMAPodVODStreamRequest
lubIMAPodStreamRequest
.IMAStreamManager
– obiekt obsługujący strumienie dynamicznego wstawiania reklam i interakcje z backendem DAI. Menedżer strumienia obsługuje też pingi śledzenia i przekazuje wydawcy zdarzenia związane z reklamą i strumieniem.
Dodatkowo, aby odtwarzać strumienie pod, musisz zaimplementować niestandardowy moduł obsługi VTP. Ten niestandardowy moduł obsługi VTP wysyła identyfikator strumienia do Twojego partnera technicznego ds. wideo (VTP) wraz z innymi informacjami, których potrzebuje, aby zwrócić plik manifestu strumienia zawierający zarówno treści, jak i zszyte reklamy. Twój dostawca VTP przekaże Ci instrukcje implementacji niestandardowego modułu obsługi VTP.
Wymagania wstępne
Zanim zaczniesz, musisz mieć:
- Xcode 13 lub nowsza
- CocoaPods (preferowane), menedżer pakietów Swift lub pobrana kopia pakietu IMA DAI SDK na iOS.
Potrzebujesz też parametrów używanych do żądania strumienia z pakietu IMA SDK.
Parametry transmisji na żywo | |
---|---|
Kod sieci |
Kod sieci na koncie Ad Managera 360. Przykład: 51636543
|
Niestandardowy klucz pliku |
Niestandardowy klucz zasobu, który identyfikuje zdarzenie wyświetlania w podgrupie w usłudze Campaign Manager 360. Możesz utworzyć go za pomocą manipulatora pliku manifestu lub zewnętrznego partnera obsługującego bloki reklamowe. Przykład: google-sample
|
Parametry strumienia VOD | |
Kod sieci |
Kod sieci na koncie Ad Managera 360. Przykład: 51636543
|
Tworzenie nowego projektu Xcode
W Xcode utwórz nowy projekt na iOS w języku Objective-C o nazwie „PodawaniePlikówZPod”.
Dodawanie pakietu IMA DAI SDK do projektu Xcode
Aby zainstalować pakiet IMA DAI SDK, użyj jednej z tych 3 metod.
Zainstaluj pakiet SDK za pomocą CocoaPods (zalecane).
CocoaPods to menedżer zależności dla projektów Xcode i 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, który zawiera plik Podfile, uruchom:
pod install --repo-update
Zainstaluj pakiet 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 Swift IMA DAI SDK, wybierając Plik > Dodaj pakiety.
W wyświetlonym promptzie wyszukaj repozytorium GitHub IMA DAI SDK Swift Package:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-ios
Wybierz wersję pakietu IMA DAI SDK w wersji Swift, której chcesz używać. W przypadku nowych projektów zalecamy użycie opcji Aktualizuj do następnej głównej wersji.
Gdy skończysz, Xcode zweryfikuje zależności pakietu i pobierze je w tle. Więcej informacji o dodawaniu zależności pakietu znajdziesz w artykule Apple.
Ręczne pobieranie i instalowanie pakietu SDK
Jeśli nie chcesz używać menedżera pakietów Swift ani CocoaPods, możesz pobrać pakiet IMA DAI SDK i ręcznie dodać go do projektu.
Tworzenie prostego odtwarzacza wideo
W głównym kontrolerze widoku zaimplementuj odtwarzacz wideo, korzystając z odtwarzacza AV ujętego w ramy widoku interfejsu użytkownika. Pakiet IMA SDK używa widoku interfejsu użytkownika do wyświetlania elementów interfejsu reklamy.
Objective-C
Swift
Inicjowanie ładowarki reklam
Zaimportuj pakiet IMA SDK do kontrolera widoku i zaimplementuj protokoły IMAAdsLoaderDelegate
i IMAStreamManagerDelegate
, aby obsługiwać zdarzenia ładowarki 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 czas działania aplikacji.IMAAdDisplayContainer
– odpowiada za wstawianie elementów interfejsu użytkownika reklamy i zarządzanie nimi.IMAAVPlayerVideoDisplay
– umożliwia komunikację między pakietem IMA SDK a odtwarzaczem multimediów oraz obsługuje otagowane metadanymi treści.IMAStreamManager
– zarządza odtwarzaniem strumienia i uruchamia zdarzenia związane z reklamami.
Po załadowaniu widoku zainicjuj ładowarkę reklam, kontener wyświetlania reklam i wyświetlanie filmu.
Objective-C
Swift
Przesyłanie żądania przesyłania strumienia
Gdy użytkownik naciśnie przycisk odtwarzania, prześlij nowe żądanie strumienia.
Użyj klasy IMAPodStreamRequest
do 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 reklamy i wyświetlania filmu.
Objective-C
Swift
Nasłuchiwanie zdarzeń wczytywania strumienia
Klasa IMAAdsLoader
wywołuje metody IMAAdsLoaderDelegate
w przypadku udanej inicjalizacji lub błędu żądania strumienia.
W metodzie delegowania adsLoadedWithData
ustaw IMAStreamManagerDelegate
.
Przekaż identyfikator strumienia do niestandardowego modułu obsługi VTP i pobierz adres URL pliku manifestu strumienia. W przypadku transmisji na żywo załaduj 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 żądanie danych zdarzeń reklamy do Ad Managera 360, a potem wczytuje adres URL pliku manifestu i rozpoczyna odtwarzanie.
W metodzie delegowanej failedWithErrorData
zapisz błąd. Opcjonalnie odtwórz strumień zapasowy. Zapoznaj się ze sprawdzonymi metodami dotyczącymi automatycznego wyświetlania reklam.
Objective-C
Swift
Wdrażanie niestandardowego modułu obsługi VTP
Niestandardowy handler VTP wysyła identyfikator strumienia widza do technicznego partnera wideo (VTP) wraz z innymi informacjami, których potrzebuje VTP, aby zwrócić manifest strumienia zawierający zarówno treści, jak i zszyte reklamy. Twój dostawca VTP udostępni Ci szczegółowe instrukcje implementacji niestandardowego modułu obsługi VTP.
Przykładowo plik VTP może zawierać URL szablonu pliku manifestu zawierający makro [[STREAMID]]
. W tym przykładzie w miejsce makra wstawia identyfikator strumienia i zwraca uzyskany adres URL pliku manifestu.
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 rejestruj w konsoli podstawowe zdarzenia reklamy:
Objective-C
Swift
Czyszczenie zasobów IMA DAI
Aby zatrzymać odtwarzanie strumienia, zatrzymać śledzenie reklam i zwolnić wszystkie załadowane zasoby strumienia, wywołaj funkcję IMAStreamManager.destroy()
.
Uruchom aplikację. Jeśli wszystko się powiedzie, możesz poprosić o odtworzenie strumienia Google DAI i odtworzyć go za pomocą pakietu IMA SDK. Więcej informacji o zaawansowanych funkcjach pakietu SDK znajdziesz w innych przewodnikach wymienionych na pasku bocznym po lewej stronie lub w przykładach na GitHubie.