Tryby działania pakietu SDK
Pakiet SDK może działać w 1 lub kilku trybach w zależności od odpowiedzi, jaką otrzyma z serwera reklam.
- Pojedyncza reklama
- Reklama, którą można odtworzyć w dowolnym momencie, gdy do użytkownika
IMAAdsManager
zostanie wysłana wiadomośćstart
. Do odtworzenia pojedynczej reklamy nie jest wymagane specjalne inicjowanie. - Blok reklamowy
- Kilka reklam odtwarza się, gdy komunikat
start
zostanie wysłany do:IMAAdsManager
. Do odtwarzania pojedynczego bloku reklamowego nie jest konieczne specjalne inicjowanie. - Reguły reklam
- Playlista z przerwami na reklamę zaplanowanymi w określonych godzinach dla konkretnych treści. Komunikat
start
jest ignorowany w trybie reguł reklamowych. Na jednej playliście może być wiele przerw na reklamy (np. przed filmem, w trakcie filmu lub po filmie). Więcej informacji o wdrażaniu znajdziesz w sekcji Reguły reklamowe poniżej.
Reguły reklam
Pakiet IMA tvOS SDK obsługuje w pełni zautomatyzowane playlisty reklam. Ta funkcja wstawia przerwy na reklamy w treści zgodnie z ustawieniami Google Ad Managera podczas trafikowania reklam. Znacznie upraszcza to też kod odtwarzacza wideo, niezbędny do obsługi przerw na reklamy, w tym reklam przed filmem, w jego trakcie i po nim.
- Podczas trafikowania reklam w usłudze Ad Manager możesz określić różne reguły reklamowe, np. „Zawsze odtwarzaj przerwę na reklamę na początku treści” lub „Włącz jednominutową przerwę na reklamę co 30 minut treści”.
- Po wysłaniu żądania reklamy serwer reklam może zwrócić playlistę reklam. SDK przetwarza playlistę i automatycznie planuje wybrane przerwy na reklamy.
- Podczas inicjowania
AdsManager
obiektIMAContentPlayhead
jest przekazywany w wywołaniuinitializeWithContentPlayhead:adsRenderingSettings:
. Jeśli do wyświetlania treści używasz odtwarzacza AVPlayer, podczas tworzenia obiektuadDisplayContainer
przekazujesz wystąpienieIMAAVPlayerContentPlayhead
do pakietu SDK. Ten obiekt służy do śledzenia postępu odtwarzania treści, dzięki czemu przerwy na reklamy są automatycznie wstawiane w czasie określonym w usłudze Ad Manager.
Za pomocą AVPlayer:
IMAContentPlayhead *contentPlayhead = [[IMAAVPlayerContentPlayhead alloc] initWithAVPlayer:self.contentAVPlayer]; IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:adTagUrl adDisplayContainer:adDisplayContainer contentPlayhead:contentPlayhead userContext:nil];
Bez AVPlayer:
- Wdróż interfejs
IMAContentPlayhead
. - Aby pokazywać bieżący czas odtwarzania filmu, zastosuj funkcję
currentTime
. - Zmień wywołanie inicjowania
IMAAdsManager
nainitializeWithContentPlayhead:self
.
- Wdróż interfejs
- Parametr IMAAdsManagerDelegate służy do wstrzymywania i wznawiania treści podczas odtwarzania przerw na reklamę.
Uwaga: po zakończeniu odtwarzania treści lub zatrzymaniu odtwarzania przez użytkownika należy wywołać metodę contentComplete
w IMAAdsLoader
, aby zasygnalizować pakietowi SDK, że odtwarzanie treści się zakończyło. Następnie pakiet SDK odtwarza przerwę na reklamę po filmie, jeśli została ona zaplanowana.
Zdarzenie ALL_ADS_COMPLETED
jest wywoływane po odtworzeniu wszystkich przerw na reklamę. Pamiętaj też, że śledzenie treści rozpoczyna się po wywołaniu metody initializeWithContentPlayhead:adsRenderingSettings
funkcji IMAAdsManager
. Należy zawsze wywoływać metodę initializeWithContentPlayhead:adsRenderingSettings
przed odtworzeniem treści.