Desarrolla un adaptador de indicadores seguros

Si tienes un SDK de proveedor de indicadores que genera indicadores de licitación en tiempo real (RTB), puedes desarrollar un adaptador de indicadores seguros para permitir que Google Mobile Ads SDK recopile indicadores de tu SDK.

Google Mobile Ads SDK reenvía tus indicadores a los compradores participantes seleccionados de Authorized Buyers y Open Bidding.

En el siguiente diagrama, se ilustra el ciclo de vida de solicitud y respuesta para la recopilación de indicadores seguros:

Un adaptador de indicadores seguros es responsable de la inicialización del adaptador y la recopilación de indicadores.

Implementa un adaptador de indicadores seguros

Implementa un adaptador de indicadores seguros para Google Mobile Ads SDK para recopilar indicadores de tu SDK.

En esta guía, se explica cómo implementar un adaptador de indicadores seguros a través del protocolo GADRTBAdapter.

En el siguiente ejemplo, se implementa el protocolo GADRTBAdapter:

Objective-C

@interface SampleAdapterSnippets : NSObject <GADRTBAdapter>
@end

Inicializa el adaptador

Google Mobile Ads SDK llama al método setUpWithConfiguration:completionHandler: cuando Google Mobile Ads SDK crea una instancia de tu adaptador de indicadores seguros. Usa este método para inicializar el SDK.

Cuando el SDK se inicialice por completo y esté listo para que Google Mobile Ads SDK recopile indicadores, llama al bloque de finalización GADMediationAdapterSetUpCompletionBlock.

Si tu adaptador de indicadores seguros no realiza una devolución de llamada, Google Mobile Ads SDK no recopila indicadores de tu adaptador de indicadores seguros.

En el siguiente ejemplo, se llama al controlador de finalización para informar a Google Mobile Ads SDK que tu SDK se inicializó correctamente:

Objective-C

+ (void)setUpWithConfiguration:(GADMediationServerConfiguration *)configuration
             completionHandler:(GADMediationAdapterSetUpCompletionBlock)completionHandler {
  // Add your SDK initialization logic here.

  // Invoke the completionHandler once initialization completes. Pass a nil
  // error to indicate initialization succeeded.
  completionHandler(nil);
}

Informa la versión del adaptador y del SDK

Tu adaptador de señales seguras debe informar tanto la versión del adaptador como la versión del SDK. Google Mobile Ads SDK usa estas versiones para generar informes y solucionar problemas.

Si tu SDK implementa este adaptador en el mismo archivo binario, puedes devolver la misma versión para el adaptador y el SDK.

En el siguiente ejemplo, se devuelve la versión de tu adaptador de indicadores seguros:

Objective-C

+ (GADVersionNumber)adapterVersion {
  // If your secure signals SDK implements this adapter in the same binary
  // return the same version as your SDK.
  // return [self adSDKVersion];

  // If you built a separate binary for this secure signals adapter, return
  // the adapter's version here.
  GADVersionNumber version = {};
  version.majorVersion = 4;
  version.minorVersion = 5;
  version.patchVersion = 6;
  return version;
}

En el siguiente ejemplo, se muestra la versión del SDK con la que interactúa tu adaptador de señales seguras:

Objective-C

+ (GADVersionNumber)adSDKVersion {
  // Return your SDK's version string here.
  NSString *versionString = kSDKVersionString;
  NSArray<NSString *> *components = [versionString componentsSeparatedByString:@"."];
  GADVersionNumber version = {};
  if (components.count == 3) {
    version.majorVersion = components[0].integerValue;
    version.minorVersion = components[1].integerValue;
    version.patchVersion = components[2].integerValue;
  } else {
    NSLog(@"Unexpected version string: %@. Returning 0.0.0 for adSDKVersion.", versionString);
  }
  return version;
}

Reemplaza kSDKVersionString por la cadena de tu versión del SDK.

Recopila indicadores

En cada solicitud de anuncio, Google Mobile Ads SDK recopila indicadores de forma simultánea de todos los adaptadores en un subproceso en segundo plano.

En el siguiente ejemplo, se recopilan y se devuelven indicadores a Google Mobile Ads SDK llamando al controlador de finalización GADRTBSignalCompletionHandler:

Objective-C

- (void)collectSignalsForRequestParameters:(GADRTBRequestParameters *)params
                         completionHandler:(GADRTBSignalCompletionHandler)handler {
  // Add your signal collection logic here.
  NSString *signals = kSampleSignalPlaceholder;

  // Return the signals as a string to the Google Mobile Ads SDK.
  handler(signals, nil);
}

Reemplaza kSampleSignalPlaceholder por tu cadena de indicadores seguros.

La recopilación de señales debe completarse en un segundo. Si la recopilación de indicadores tarda más de un segundo, considera almacenar en caché los indicadores en tu adaptador de indicadores seguros o en tu SDK cuando inicialices el adaptador.

Si tu adaptador de indicadores seguros no puede recopilar indicadores, llama al controlador de finalización con indicadores nil y un objeto NSError.

Ofusca los indicadores

Cuando compartes indicadores seguros con los ofertantes y los socios de selección, debes ofuscar los indicadores.

Devuelve un valor de nil para los extras de la red publicitaria

Los adaptadores de indicadores seguros no requieren parámetros adicionales de red.

El siguiente método +networkExtrasClass de ejemplo devuelve un valor nil:

Objective-C

+ (nullable Class<GADAdNetworkExtras>)networkExtrasClass {
  // Network extras are not applicable because signal providers do not request ads.
  return nil;
}