Безопасные сигналы — это закодированные данные, которые собираются на клиентском устройстве и передаются избранным участникам торгов. В этом руководстве показано, как собирать и отправлять безопасные сигналы в Google Ad Manager с помощью IMA SDK.
Для API безопасных сигналов требуется версия 3.29.0 или более поздняя версия IMA SDK для Android.
Чтобы выбрать сигналы и системы назначения ставок, а также включить безопасный обмен сигналами, см. раздел «Обмен защищенными сигналами с системами назначения ставок» .
Используйте стороннего поставщика сигналов
Чтобы использовать защищенные сигналы, необходимо развернуть в своем приложении класс адаптера сборщика сигналов для сбора сигналов, их кодирования и передачи в IMA SDK.
Следуйте инструкциям стороннего поставщика, чтобы настроить у него учетную запись, добавить зависимости сборки и настроить адаптер безопасных сигналов в своем приложении.
IMA SDK для Android автоматически инициализирует каждый адаптер защищенных сигналов без каких-либо дополнительных изменений в коде.
Вот пример того, как вы можете добавить в свой проект адаптер защищенных сигналов:
Отправить пользовательские данные
Помимо использования стороннего поставщика сигналов, вы также можете собирать, кодировать и отправлять сигналы с пользовательскими данными. Прежде чем вы сможете отправлять безопасные сигналы с пользовательскими данными, вам необходимо включить специальные сигналы в Менеджере рекламы.
Для каждого запроса объявления создайте объект SecureSignals
, содержащий ваши закодированные пользовательские данные в виде строки. Затем добавьте объект SecureSignals
в свой запрос объявления, adsRequest.setSecureSignals()
.
Вот пример Java:
app/src/main/java/com/example/имя проекта/MainActivity.java
...
private void requestAds(String adTagUrl) {
// Create the ads request.
AdsRequest request = sdkFactory.createAdsRequest();
request.setAdTagUrl(adTagUrl);
request.setContentProgressProvider(
() -> {
if (videoPlayer.getDuration() <= 0) {
return VideoProgressUpdate.VIDEO_TIME_NOT_READY;
}
return new VideoProgressUpdate(
videoPlayer.getCurrentPosition(), videoPlayer.getDuration());
});
SecureSignals signal = SecureSignals.create("My encoded signal string");
request.setSecureSignals(signal);
// Request the ad. After the ad is loaded, onAdsManagerLoaded() will be called.
adsLoader.requestAds(request);
}
...