Защищенные сигналы – это закодированные данные, которые собираются на устройстве клиента и передаются выбранным системам назначения ставок. В этом руководстве рассказывается, как собирать и отправлять защищенные сигналы в Google Менеджер рекламы с помощью IMA SDK.
Для работы с API защищенных сигналов требуется IMA SDK для Android версии 3.29.0 или более поздней.
Чтобы выбрать сигналы и системы назначения ставок, а также включить передачу защищенных сигналов, ознакомьтесь со статьей Как передавать защищенные сигналы системам назначения ставок.
Как использовать стороннего поставщика сигналов
Чтобы использовать защищенные сигналы, необходимо развернуть в приложении класс адаптера для сбора сигналов, который будет собирать сигналы, кодировать их и передавать в IMA SDK.
Следуйте инструкциям стороннего поставщика, чтобы создать аккаунт, добавить зависимости сборки и настроить адаптер защищенных сигналов в приложении.
IMA SDK для Android автоматически инициализирует каждый адаптер защищенных сигналов без дополнительных изменений в коде.
Вот пример того, как можно добавить адаптер защищенных сигналов в проект:

Отправка специальных данных
Помимо использования стороннего поставщика сигналов, вы также можете собирать, кодировать и отправлять сигналы с собственными данными. Чтобы отправлять защищенные сигналы с пользовательскими данными, необходимо включить пользовательские сигналы в Менеджере рекламы.
Для каждого запроса потока выполните следующие действия:
- Создайте объект
SecureSignals, содержащий закодированные пользовательские данные в виде строки. - Добавьте объект
SecureSignalsв запрос потока, вызвав методstreamRequest.setSecureSignals():
app/src/main/java/com/example/project name/SampleAdsWrapper.java
public void requestAndPlayAds() {
adsLoader.addAdErrorListener(this);
adsLoader.addAdsLoadedListener(this);
StreamRequest request = buildStreamRequest();
SecureSignals signal = SecureSignals.create("My encoded signal string");
request.setSecureSignals(signal);
request.setFormat(StreamFormat.HLS);
adsLoader.requestStream(request);
}