Indicadores seguros

Los indicadores seguros son datos codificados que se recopilan en el dispositivo del cliente y se comparten con ofertantes seleccionados. En esta guía, se muestra cómo recopilar y enviar indicadores seguros a Google Ad Manager con el SDK de IMA.

La API de indicadores seguros requiere la versión 4.8.2 o posterior del SDK de IMA para tvOS.

Para seleccionar indicadores y ofertantes, y habilitar el uso compartido de indicadores seguros, consulta Cómo compartir indicadores seguros con los ofertantes.

Usa un proveedor de indicadores de terceros

Para usar indicadores seguros, debes implementar una clase de adaptador de recopilador de indicadores en tu app para recopilarlos, codificarlos y pasarlos al SDK de IMA.

Sigue las instrucciones de tu proveedor externo para configurar una cuenta con él, incluir frameworks y configurar su adaptador de indicadores seguros en tu app.

El SDK de IMA para tvOS inicializa automáticamente cada adaptador de indicadores seguros, sin cambios adicionales en el código.

A continuación, se muestra un ejemplo de cómo puedes agregar un adaptador de indicadores seguros a tu proyecto:

Envía datos personalizados

Además de usar un proveedor de indicadores de terceros, también puedes recopilar, codificar y enviar indicadores con datos personalizados. Para poder enviar indicadores seguros con datos personalizados, debes activar los indicadores personalizados en Ad Manager.

Para cada solicitud de anuncio, crea un objeto IMASecureSignals que contenga tus datos personalizados codificados como una cadena. Luego, llama al atributo IMAAdsRequest.secureSignals para agregar el objeto IMASecureSignals a tu solicitud de anuncio.

Estos son ejemplos en Objective-C y Swift:

Objective-C

BasicExample/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];
}
...

Swift

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)
}
...