Безопасные сигналы

Безопасные сигналы — это закодированные данные, которые собираются на клиентском устройстве и передаются избранным участникам торгов. В этом руководстве показано, как собирать и отправлять безопасные сигналы в Google Ad Manager с помощью IMA SDK.

Для API безопасных сигналов требуется версия 4.8.2 или более поздняя версия IMA SDK для tvOS.

Чтобы выбрать сигналы и системы назначения ставок, а также включить безопасный обмен сигналами, см. раздел «Обмен защищенными сигналами с системами назначения ставок» .

Используйте стороннего поставщика сигналов

Чтобы использовать защищенные сигналы, необходимо развернуть в своем приложении класс адаптера сборщика сигналов для сбора сигналов, их кодирования и передачи в IMA SDK.

Следуйте инструкциям стороннего поставщика, чтобы создать у него учетную запись, включить платформы и настроить адаптер безопасных сигналов в своем приложении.

IMA SDK для tvOS автоматически инициализирует каждый адаптер защищенных сигналов без каких-либо дополнительных изменений в коде.

Вот пример того, как вы можете добавить в свой проект адаптер защищенных сигналов:

Отправить пользовательские данные

Помимо использования стороннего поставщика сигналов, вы также можете собирать, кодировать и отправлять сигналы с пользовательскими данными. Прежде чем вы сможете отправлять безопасные сигналы с персонализированными данными, вам необходимо включить специальные сигналы в Менеджере рекламы.

Для каждого запроса объявления создайте объект IMASecureSignals содержащий ваши закодированные пользовательские данные в виде строки. Затем добавьте объект IMASecureSignals в свой запрос объявления, вызвав атрибут IMAAdsRequest.secureSignals .

Вот примеры в Objective-C и Swift:

Цель-C

БазовыйExample/ViewController.m

...
- (void)requestAds {
  // Create an ad display container for ad rendering.
  IMAAdDisplayContainer *adDisplayContainer =
      [[IMAAdDisplayContainer alloc] initWithAdContainer:self.videoView
                                          viewController:self
                                          companionSlots:nil];
  // Create an ad request with our ad tag, display container, and optional user context.
  IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:kTestAppAdTagUrl
                                                adDisplayContainer:adDisplayContainer
                                                   contentPlayhead:self.contentPlayhead
                                                       userContext:nil];
  
  IMASecureSignals *signals =
      [[IMASecureSignals alloc] initWithCustomData:@"My encoded signal string"];
  request.secureSignals = signals;
  
  [self.adsLoader requestAdsWithRequest:request];
}
...

Быстрый

BasicExample/ViewController.swift

...
private func requestAds() {
  // Create ad display container for ad rendering.
  let adDisplayContainer = IMAAdDisplayContainer(
    adContainer: videoView, viewController: self, companionSlots: nil)
  // Create an ad request with our ad tag, display container, and optional user context.
  let request = IMAAdsRequest(
    adTagUrl: ViewController.testAppAdTagURL,
    adDisplayContainer: adDisplayContainer,
    contentPlayhead: contentPlayhead,
    userContext: nil)
  
  let signals = IMASecureSignals(customData: "My encoded signal string")
  request.secureSignals = signals
  
  adsLoader.requestAds(with: request)
}
...