Obsługa zapośredniczenia w środowisku wykonawczym SDK

Zapośredniczenie to powszechny sposób oferowania zarządzania zyskiem przez platformy reklamowe po stronie sprzedającego. W procesie zapośredniczenia pakiet SDK zapośredniczenia (mediator) wywołuje wiele sieci reklamowych (mediatee lub mediatees), aby uzyskać najlepszą reklamę dla danego miejsca na reklamę. W niektórych przypadkach zarówno mediator, jak i wywoływane przez niego sieci reklamowe muszą mieć pakiet SDK na urządzeniu i mieć możliwość interakcji.

Ten dokument zawiera najważniejsze zmiany w procesach zapośredniczenia w czasie działania platformy SDK. Obejmuje on te tematy:

  • Różnice między poprzednimi ścieżkami zapośredniczenia a obecną obsługą zapośredniczenia w czasie wykonywania pakietu SDK
  • Konfigurowanie działań w ramach przepływów pracy zapośredniczenia w czasie działania pakietu SDK oraz różnych etapów przejścia
  • Wskazówki dotyczące postępowania w sytuacjach, w których nie wszystkie pakiety SDK zostały przeniesione do środowiska wykonawczego

Obsługa pośrednich reklam w środowisku wykonawczym pakietu SDK jest dostępna od wersji AGP 8.5 oraz tych wersji bibliotek Jetpacka do środowiska wykonawczego pakietu SDK:

Biblioteka Androidx Wersja
androidx.privacysandbox.activity 1.0.0-alpha01
androidx.privacysandbox.sdkruntime 1.0.0-alpha13
androidx.privacysandbox.tools 1.0.0-alpha08
androidx.privacysandbox.ui 1.0.0-alpha09

Słowniczek

Aby zrozumieć działanie zapośredniczenia w czasie działania pakietu SDK, musisz poznać te kluczowe terminy:

  • Pakiet SDK używany w czasie działania aplikacji (RE SDK): pakiet SDK przeznaczony do działania w środowisku wykonawczym SDK i komunikujący się z aplikacją za pomocą komunikacji międzyprocesowej (IPC).
  • Pakiet SDK zależny od czasu działania (RA SDK): pakiet SDK nieobsługiwany w czasie działania, który jest połączony z aplikacją w sposób statyczny. Może zawierać dotychczasowy kod SDK oraz nowy kod do wywołania pakietu SDK obsługiwanego w czasie działania.
  • Pakiet SDK w aplikacji: pakiet SDK, który jest połączony ze stałą częścią aplikacji i nie ma dostępu do środowiska wykonawczego SDK. Może to być sieć reklamowa, która nie przeszła na środowisko uruchomieniowe pakietu SDK, lub niestandardowy adapter wydawcy.
  • Mediator: pakiet SDK do zapośredniczenia reklam, który zapewnia usługę zapośredniczenia na urządzeniu poprzez interakcję z innymi pakietami SDK sieci reklamowych.
  • Mediatee: pakiet SDK sieci reklamowej, który jest wywoływany przez mediatora w celu dostarczenia i wyświetlenia reklamy.
  • Adapter zapośredniczenia: pakiety SDK używane przez pakiet Mediator SDK do tłumaczenia interfejsu API w celu interoperacyjności z różnymi pakietami SDK pośrednika, które są zwykle udostępniane przez pośrednika. Mogą być one zależne od czasu wykonywania lub niezależne od niego.

Typowe przepływy zapośredniczenia

Jeśli pakiet SDK musi obsługiwać przypadki użycia zapośredniczenia w środowisku wykonawczym pakietu SDK, musisz wprowadzić pewne zmiany. W tej sekcji omawiamy kluczowe elementy procesów pośrednictwa, aby móc wprowadzić zmiany wymagane w przypadku pośredników i stron pośrednictwa.

Opisane przez nas przepływy to uproszczona wersja zapośredniczenia na urządzeniu z użyciem wielu pakietów SDK sieci reklamowych. Stanowią one podstawę do dyskusji na temat zmian wymaganych do zapewnienia zgodności ścieżek zapośredniczenia z czasem wykonywania pakietu SDK.

Ze względu na różnice w wdrożeniach przepływu zapośredniczenia skupiamy się na 2 głównych przepływach:

  • Inicjowanie (w tym wykrywanie sieci reklamowych i komunikacja)
  • Prezentacja reklamy w interfejsie użytkownika

Zdarzenie inicjujące

Poniżej przedstawiono standardową procedurę inicjowania, wykrywania sieci reklamowej i przekazywania informacji:

  1. Aplikacja kliencka inicjuje mediatora
  2. Pośrednik wykrywa i inicjalizuje odpowiednie pośrednie i adaptery
  3. Pośrednik używa swoich adapterów do komunikacji z każdą stroną uczestniczącą w zapośredniczeniu
  4. Aplikacja kliencka prosi pośrednika o wczytanie reklamy
  5. Aplikacja klienta prosi pośrednika o wyświetlenie tej reklamy

Prezentacja interfejsu reklamy

Jeśli chodzi o renderowanie reklamy po ostatnim żądaniu w poprzednim kroku, przebieg procesu zależy od typu reklamy:

Banery reklamowe Reklamy pełnoekranowe reklamy natywne,
Pakiet SDK pośrednika tworzy widok reklamy, który otacza widok reklamy zwycięskiego pośrednika.

Może też ustawić w tym widoku słuchaczy lub automatycznie odświeżyć reklamę (za pomocą tego samego lub innego pośrednika).
Pakiet SDK pośrednika wysyła żądanie reklamy pełnoekranowej do aplikacji pośredniczącej, która z kolei uruchamia działanie. Wydawca zarządza wyświetlaniem i rozwijaniem za pomocą komponentów zwracanych przez mediatora SDK.

Przepływy zapośredniczenia w środowisku wykonawczym SDK

Sposób działania zapośredniczenia w czasie działania pakietu SDK zależy od tego, czy obiekt zapośredniczenia jest włączony w czasie działania. W zależności od tego mogą wystąpić następujące scenariusze:

  • Zarówno mediator, jak i mediate znajdują się w środowisku wykonawczym SDK: RE mediatee
  • Pośrednik znajduje się w środowisku wykonawczym pakietu SDK, a mediatowany element – w aplikacji: Mediatowany element w aplikacji

RE Mediatee

Na tym diagramie architektury znajdziesz ogólne omówienie interakcji między pakietami SDK do obsługi w czasie wykonywania (RE) i uwzględniania w czasie wykonywania (RA) mediatora, adapterami do mediowania RE oraz pakietami SDK RE reklamodawców.

Adaptery pośrednictwa muszą być w tym samym procesie co pośrednik, z którym się łączą, więc muszą też przejść na środowisko wykonawcze SDK.

Diagram architektury przedstawiający ogólne informacje o interakcji między pakietami SDK używanymi w czasie działania (RE) i uwzględniającymi czas działania (RA) mediatora, adapterami do pośredniczenia RE oraz pakietami SDK RE reklamodawców pośredniczących.
Rysunek 1. Zarówno mediator, jak i mediatowany są pakietami SDK RE.

Zdarzenie inicjujące

Jeśli chodzi o inicjowanie, wykrywanie i komunikację zarówno mediatora, jak i obiektu pośredniczącego w czasie wykonywania, proces przebiega w taki sposób:

  1. Aplikacja (lub pakiet SDK reklamy w wyszukiwarce) wczytuje i inicjalizuje pakiet SDK pośrednika za pomocą interfejsu SdkSandboxManager#loadSdk.
  2. Podczas inicjowania pakiet SDK pośrednika wczytuje i inicjuje wszystkie wymagane pośredniki w środowisku wykonawczym pakietu SDK za pomocą SdkSandboxController#loadSdk.
  3. Pakiet SDK RE może wykrywać wszystkie załadowane pakiety SDK w środowisku wykonawczym, wywołując funkcję SdkSandboxController#getSandboxedSdks.
RE – diagram sekwencji zapośredniczenia RE przedstawiający omówiony wcześniej proces.
Rysunek 2. Proces inicjowania pośrednika RE.

Prezentacja interfejsu reklamy

W tej sekcji omawiamy wczytywanie banerów i reklam pełnoekranowych z poziomu REmediatee.

RE Mediatee banner ads

Gdy aplikacja wysyła żądanie załadowania banera reklamowego, proces renderowania przebiega w ten sposób:

  1. Pośrednik wybiera zwycięski pośrednik dla tej reklamy.
  2. Pośrednik uzyskuje od strony, która jest przedmiotem mediacji, SandboxedUiAdapter.
  3. Pośrednik przekazuje interfejs UiAdapter do aplikacji.
Schemat procesu renderowania banera reklamowego w ramach zapośredniczenia RE-RE.
Rysunek 3. Proces renderowania banera reklamowego z poziomu zapośredniczenia RE.

Dowiedz się więcej o używaniu biblioteki SandboxedUiAdapter i interfejsu użytkownika biblioteki pakietu SDK w czasie wykonywania.

Nakładki na banery reklamowe

Jeśli pośrednicy chcą dodać do reklamy nakładkę, muszą zmodyfikować proces w taki sposób:

  1. Pośrednik tworzy układ z nakładką i SandboxedSdkView.
  2. Pośrednik wybiera zwycięski pośrednik dla tej reklamy.
  3. Mediator uzyskuje SandboxedUiAdapter od strony, która jest przedmiotem mediacji.
  4. Pośrednik ustawia wartość UiAdapter obiektu pośredniczącego na SandboxedSdkView.
  5. Pośrednik udostępnia wypełniony widok aplikacji.
Procedura nakładania widoku na baner reklamowy uzyskany z RE Mediatee.
Procedura nakładania widoku na baner reklamowy uzyskany z RE Mediatee.
RE Mediatee full-screen ads

Gdy aplikacja poprosi o wczytanie reklamy pełnoekranowej, proces przebiega w ten sposób:

  1. Aplikacja (lub pakiet RA SDK) przekazuje mediatorowi SdkActivityLauncherz żądaniem załadowania reklamy.
    1. Klient może ograniczyć tworzenie aktywności za pomocą predykatu.
  2. Pośrednik wybiera zwycięski pośrednik dla tej reklamy.
  3. Pośrednik prosi o wczytanie reklamy, przekazując SdkActivityLauncher z aplikacji.
  4. Obiekt pośredniczący rejestruje moduł obsługi aktywności i otrzymuje token identyfikatora dla zarejestrowanej aktywności.
  5. Usługa pośrednicząca używa tokena SdkActivityLauncher do żądania rozpoczęcia działania za pomocą tego tokena.
  6. Jeśli predykat aplikacji klienckiej na to zezwala, środowisko wykonawcze SDK uruchomi tę aktywność w ramach dedykowanego procesu.
Proces wyświetlania pośredniej aplikacji pełnoekranowej z RE Mediatee.
Rysunek 4. Schemat przepływu pokazujący, jak wczytać zapośredniczoną reklamę pełnoekranową z RE Mediatee.

Więcej informacji o obsługiwaniu aktywności w reklamach pełnoekranowych w pakiecie SDK Runtime

Mediatee w aplikacji

Na poniższym diagramie architektury znajdziesz ogólne omówienie interakcji między pakietami SDK RE i RA pośrednika, adapterami pośrednictwa, które nie są świadome środowiska wykonawczego SDK, oraz pakietami SDK pośredników połączonymi statycznie z aplikacją (również nieświadomymi środowiska wykonawczego).

Diagram architektury przedstawiający ogólne informacje o interakcji pakietów SDK RE i RA pośrednika, o adapterach pośrednictwa, które nie są świadome środowiska wykonawczego SDK, oraz o pakietach SDK pośrednictwa połączonych statycznie z aplikacją (które również nie są świadome środowiska wykonawczego).
Rysunek 5. Aplikacja pośrednicząca jest statycznie powiązana z aplikacją, nawet jeśli jest świadoma pakietu SDK RE.

Zdarzenie inicjujące

W tym scenariuszu pośrednicy są statycznie powiązani z aplikacją i jeszcze nie zostali przeniesieni do środowiska wykonawczego pakietu SDK, dlatego w pakiecie SDK z włączonym środowiskiem wykonawczym powinien być proces rejestrowania pośredników.

Rejestracja powinna być dostępna za pomocą interfejsu API pośrednika, ale szczegóły implementacji pozostawiamy do decyzji każdego pośrednika. Nazywamy go interfejsem API MediationSandboxedSdk#registerInAppMediatee.

Jeśli chodzi o inicjowanie, wykrywanie i komunikację z pakietem SDK pośredniczącym w reklamie i pakietami SDK pośredniczonych reklam w aplikacji, proces wygląda tak:

  1. Aplikacja wczytuje i inicjalizuje pakiet SDK pośrednika uwzględniający środowisko uruchomieniowe.
  2. Pakiet SDK RA pośrednika:
    1. Inicjowanie pakietu RE SDK pośrednika za pomocą SdkSandboxManager#loadSdk.
    2. Inicjowanie wszystkich pakietów SDK mediowanych w aplikacji.
    3. Wykrywanie i rejestrowanie pośrednich pakietów SDK w aplikacji za pomocą interfejsu API udostępnianego przez pakiet SDK RE (MediationSandboxedSdk#registerInAppMediate).

Oprócz zarejestrowania wszystkich pakietów SDK mediowanych w aplikacji mediator może za pomocą SdkSandboxController#getSandboxedSdks wykrywać wszystkie pakiety SDK załadowane w środowisku wykonawczym pakietu SDK.

Sekwencja ilustrująca opisane powyżej działanie wstępne do zainicjowania pośredniczenia w aplikacji.
Rysunek 6. Pamiętaj, że do rejestrowania odwołań do mediowanych treści w aplikacji używamy interfejsu API sugerowanego pośrednika.

Prezentacja interfejsu reklamy

W tej sekcji omawiamy wczytywanie banerów i reklam pełnoekranowych z mediatee w aplikacji.

Banery reklamowe z pośrednictwem w aplikacji

Gdy aplikacja wysyła żądanie załadowania banera reklamowego, proces renderowania przebiega w ten sposób:

  1. Pakiet SDK obsługujący środowisko uruchomieniowe pośrednika przekazuje żądanie aplikacji do pakietu SDK obsługującego środowisko uruchomieniowe.
  2. Pakiet SDK RE pośrednika wybiera odpowiednią stronę pośredniczą.
  3. Pakiet RE SDK pośrednika pobiera odwołanie do pośrednika i prosi o wczytanie reklamy za pomocą pakietu RA SDK.
  4. Pakiet SDK RA uzyskuje widok z zapośredniczenia w aplikacji.
  5. Pakiet SDK RA tworzy SandboxedUiAdapter dla otrzymanego widoku.
  6. Pakiet SDK RA przekazuje UiAdapter do pakietu SDK RE.
  7. Pakiet SDK RE przekazuje UiAdapter do aplikacji.
Proces renderowania banerów reklamowych z reklam pośredniczących w aplikacji
Rysunek 7. Pamiętaj, że pośrednik nie może nakładać wyświetleń na V1, gdy uzyskuje je z poziomu aplikacji.
Reklamy pełnoekranowe w aplikacji obsługiwane przez pośrednika

Gdy aplikacja poprosi o wczytanie reklamy pełnoekranowej, proces przebiega w ten sposób:

  1. Aplikacja przekazuje pakietowi RA SDK pośrednika SdkActivityLauncherżądanie załadowania reklamy.
    1. Klient może ograniczyć tworzenie aktywności za pomocą predykatu.
  2. Pakiet SDK RA pośrednika przekazuje żądanie aplikacji do pakietu SDK RE.
  3. Pakiet SDK RE pośrednika:
    1. Wybiera odpowiedni obiekt pośredniczący.
    2. Pobiera odwołanie do pośrednika w aplikacji.
    3. Żądania wczytania reklamy za pomocą pakietu RA SDK.
  4. Pakiet RA SDK prosi o wczytanie reklamy.
  5. Osoba pośrednicząca uruchamia aktywność bezpośrednio. Założenie aplikacji nie zostanie spełnione.
Proces wczytywania reklamy pełnoekranowej, gdy pośrednik jest w aplikacji.
Rysunek 8. Wyrażenie z predykatem zostanie zignorowane przez pośrednika w aplikacji.

Zaangażowanie i przesyłanie opinii

Piaskownica prywatności na Androida to projekt ciągły, a ten dokument odzwierciedla jego obecną wersję. Twoja opinia jest dla nas bardzo ważna, ponieważ stale rozwijamy tę funkcję i ulepszamy jej działanie. Zgłoś błąd, aby przekazać opinię.