Посредничество – это распространенный способ управления доходами для рекламных платформ продавцов. В рабочем процессе медиации SDK медиации («посредник») обращается к нескольким рекламным сетям («посредник» или «посредники») для получения лучшего объявления для данного рекламного места. В некоторых случаях и посреднику, и рекламным сетям, которые он вызывает, необходимо, чтобы их SDK были на устройстве и взаимодействовали.
В этом документе описаны ключевые изменения в рабочих процессах передачи в среде выполнения SDK. Он охватывает следующие темы:
- Различия между предыдущими потоками медиации и текущей поддержкой медиации среды выполнения SDK
- Действия по настройке рабочих процессов передачи в среде выполнения SDK и различные этапы перехода
- Руководство по действиям в сценариях, в которых не все SDK перенесены в среду выполнения.
Поддержка опосредованной рекламы в среде выполнения SDK доступна в AGP 8.5 и в следующих версиях библиотек Jetpack среды выполнения SDK:
Androidx-библиотека | Версия |
---|---|
androidx.privacysandbox.activity | 1.0.0-альфа01 |
androidx.privacysandbox.sdkruntime | 1.0.0-альфа13 |
androidx.privacysandbox.tools | 1.0.0-альфа08 |
androidx.privacysandbox.ui | 1.0.0-альфа09 |
Глоссарий
Следующие термины являются ключевыми для понимания медиации в среде выполнения SDK:
- SDK с поддержкой среды выполнения (RE SDK): SDK, предназначенный для работы в среде выполнения SDK и взаимодействия с приложением посредством межпроцессного взаимодействия (IPC).
- SDK с поддержкой среды выполнения (RA SDK): SDK без поддержки среды выполнения, статически связанный с приложением, который может содержать существующий код SDK, а также новый код для вызова в ваш SDK с поддержкой среды выполнения.
- In-app SDK: SDK, который запускается статически связанный с приложением и не учитывает среду выполнения SDK. Это может быть рекламная сеть, которая не перешла на SDK Runtime, или специальный адаптер издателя.
- Медиатор: SDK рекламного посредничества, который предоставляет посредническую услугу на устройстве путем взаимодействия с другими SDK рекламной сети.
- Посредник: SDK рекламной сети, который вызывается посредником для предоставления и отображения объявления.
- Адаптер-посредник: SDK, используемые SDK-посредником для обеспечения трансляции интерфейса API для взаимодействия с различными SDK-посредниками, обычно предоставляемыми посредником. Они могут быть осведомлены о времени выполнения или не учитывать время выполнения.
Типичные потоки посредничества
Если ваш SDK должен поддерживать варианты использования медиации в среде выполнения SDK, вам потребуется внести некоторые изменения. В этом разделе рассматриваются ключевые элементы процессов посредничества, чтобы мы могли учесть изменения, необходимые для медиаторов и лиц, оказывающих медиацию.
Описываемые нами потоки представляют собой упрощенную версию посредничества на устройстве с несколькими SDK рекламных сетей и служат основой для обсуждения изменений, необходимых для обеспечения совместимости процессов посредничества с SDK Runtime.
Учитывая различия в реализациях потока медиации, мы сосредоточиваемся на следующих двух основных потоках:
- Инициализация (включая обнаружение рекламных сетей и коммуникации)
- Презентация пользовательского интерфейса рекламы
Инициализация
Ниже представлена стандартная инициализация, обнаружение рекламной сети и поток связи:
- Клиентское приложение инициирует посредник
- Посредник обнаруживает и инициализирует соответствующих посредников и адаптеры.
- Медиатор использует свои адаптеры для связи с каждым посредником.
- Клиентское приложение запрашивает посредника загрузить рекламу.
- Клиентское приложение запрашивает посредника показать это объявление.
Презентация рекламного интерфейса
Когда дело доходит до рендеринга объявления после последнего запроса на предыдущем шаге, порядок действий зависит от типа объявления:
Баннерная реклама | Полноэкранные объявления | Нативная реклама |
---|---|---|
SDK посредника создает представление объявления, которое оборачивает представление объявления победившего посредника. Он также может установить прослушиватели для этого представления или автоматически обновить объявление (с использованием того же или другого посредника). | SDK посредника запрашивает полноэкранную рекламу у посредника, который, в свою очередь, запускает действие. | Издатель управляет обработкой представления и раздуванием данных с помощью компонентов, возвращаемых пакетом SDK посредника. |
Потоки передачи в среде выполнения SDK
Как работает посредничество внутри среды выполнения SDK, зависит от того, включен ли объект посредника во время выполнения или нет. Исходя из этого, мы можем иметь следующие сценарии:
- И посредник, и посредник находятся в среде выполнения SDK: RE mediatee.
- Посредник находится в среде выполнения SDK, а посредник — в приложении: Посредник в приложении.
RE Посредник
На следующей схеме архитектуры показан общий обзор взаимодействия SDK с поддержкой среды выполнения (RE) и с поддержкой среды выполнения (RA) посредника, адаптеров-посредников RE и пакетов RE SDK посредника.
Адаптеры-посредники должны находиться в том же процессе, что и объект-посредник, с которым они взаимодействуют, поэтому им также придется перейти на среду выполнения SDK.
Инициализация
При рассмотрении инициализации, обнаружения и связи как посредника, так и посредника с поддержкой среды выполнения, поток будет следовать следующим шагам:
- Приложение (или RA SDK) загружает и инициализирует пакет SDK-посредника с помощью
SdkSandboxManager#loadSdk
. - Во время инициализации пакет SDK посредника загружает и инициализирует все необходимые посредники в среде выполнения SDK с помощью
SdkSandboxController#loadSdk
. - RE SDK может обнаружить все загруженные SDK в среде выполнения, вызвав
SdkSandboxController#getSandboxedSdks
.
Презентация рекламного интерфейса
В следующем разделе описывается загрузка баннеров и полноэкранной рекламы от посредника RE.
Рекламные баннеры RE Mediatee
Учитывая запрос приложения на загрузку рекламного баннера, процесс завершения рендеринга выглядит следующим образом:
- Посредник выбирает победившего посредника для этого объявления.
- Посредник получает
SandboxedUiAdapter
от посредника. - Посредник пересылает UiAdapter в приложение.
Наложения на рекламные баннеры
Если посредники хотят добавить наложение к объявлению, им придется изменить поток следующим образом:
- Посредник создает макет с его наложением и
SandboxedSdkView
. - Посредник выбирает победившего посредника для этого объявления.
- Посредник получает
SandboxedUiAdapter
от посредника. - Посредник устанавливает для
UiAdapter
посредника значениеSandboxedSdkView
. - Посредник делится заполненным представлением с приложением.
Полноэкранная реклама RE Mediatee
Учитывая запрос приложения на загрузку полноэкранного объявления, процесс выполняется следующим образом:
- Приложение (или RA SDK) передает
SdkActivityLauncher
посреднику с запросом на загрузку объявления.- Клиент может ограничить создание действий с помощью предиката .
- Посредник выбирает победившего посредника для этого объявления.
- Посредник запрашивает посредника загрузить рекламу, передавая
SdkActivityLauncher
из приложения. - Посредник регистрирует обработчик активности и получает токен идентификатора для зарегистрированной активности.
- Посредник использует
SdkActivityLauncher
для запроса на запуск действия с использованием этого токена. - Если предикат клиентского приложения позволяет это, среда выполнения SDK запустит это действие в выделенном процессе.
Узнайте больше о поддержке действий для полноэкранных объявлений в среде выполнения SDK.
Посредник в приложении
На следующей схеме архитектуры показан общий обзор взаимодействия SDK RE и RA посредника, адаптеров-посредников, которые не знают о среде выполнения SDK, и SDK получателей посредника, статически связанных с приложением (также не поддерживающих среду выполнения).
Инициализация
Поскольку в этом сценарии посредники статически связаны с приложением и еще не перенесены в среду выполнения SDK, SDK с поддержкой среды выполнения посредника должен иметь процесс для их регистрации .
Эта регистрация должна быть доступна через API посредника, но детали реализации оставлены на усмотрение каждого посредника. Мы называем этот API MediationSandboxedSdk#registerInAppMediatee
.
При рассмотрении инициализации, обнаружения и передачи SDK посредника RE и SDK посредника в приложении поток будет следовать следующим шагам:
- Приложение загружает и инициализирует SDK посредника, поддерживающий среду выполнения.
- SDK РА посредника:
- Инициализирует RE SDK посредника, используя
SdkSandboxManager#loadSdk
. - Инициализирует все SDK-посредники в приложении.
- Обнаруживает и регистрирует SDK посредника в приложении с помощью API, предоставляемого RE SDK,
MediationSandboxedSdk#registerInAppMediate
.
- Инициализирует RE SDK посредника, используя
Помимо регистрации всех SDK-посредника в приложении, RE SDK посредника может обнаруживать все SDK, загруженные в среду выполнения SDK, с помощью SdkSandboxController#getSandboxedSdks
.
Презентация рекламного интерфейса
В следующем разделе описывается загрузка баннеров и полноэкранной рекламы из медиатора внутри приложения.
Баннерная реклама в приложении
Учитывая запрос приложения на загрузку рекламного баннера, процесс завершения рендеринга выглядит следующим образом:
- SDK посредника с поддержкой среды выполнения перенаправляет запрос приложения в свой SDK с поддержкой среды выполнения.
- RE SDK посредника выбирает соответствующего посредника.
- RE SDK посредника получает ссылку на посредника и запрашивает загрузку объявления через RA SDK.
- RA SDK получает представление от посредника в приложении.
- RA SDK создает
SandboxedUiAdapter
для полученного представления. - RA SDK перенаправляет
UiAdapter
в RE SDK. - RE SDK перенаправляет
UiAdapter
в приложение.
Полноэкранная реклама в приложении с посредником
Учитывая запрос приложения на загрузку полноэкранного объявления, процесс выполняется следующим образом:
- Приложение передает
SdkActivityLauncher
в SDK RA посредника с запросом на загрузку объявления.- Клиент может ограничить создание действий с помощью предиката .
- SDK RA посредника перенаправляет запрос приложения в свой RE SDK.
- RE SDK посредника:
- Выбирает соответствующего посредника.
- Получает ссылку на посредника в приложении.
- Запрашивает загрузку объявления через RA SDK.
- RA SDK запрашивает посредника загрузить рекламу.
- Опосредуемый непосредственно начинает деятельность. Предикат приложения не будет учитываться.
Привлекайте и делитесь отзывами
Privacy Sandbox для Android — это текущий проект, и в этом документе отражен его текущий дизайн. Ваше мнение очень важно, поскольку мы продолжаем развивать и улучшать его функции. Сообщите об ошибке, чтобы оставить отзыв.