Desenvolver um adaptador de indicador seguro

Se você tiver um SDK de provedor de indicadores que gera indicadores de lances em tempo real (RTB) , poderá desenvolver um adaptador de indicadores seguros para permitir que Google Mobile Ads SDK colete indicadores do seu SDK.

Google Mobile Ads SDK encaminha seus indicadores para compradores selecionados do Authorized Buyers e do Open Bidding.

O diagrama a seguir ilustra o ciclo de vida de solicitação-resposta para a coleta de indicadores seguros:

Um adaptador de indicadores seguros é responsável pela inicialização do adaptador e pela coleta de indicadores.

Implementar um adaptador de indicadores seguros

Implemente um adaptador de indicadores seguros para que Google Mobile Ads SDK colete indicadores do seu SDK.

Este guia aborda como implementar um adaptador de indicadores seguros implementando o GADRTBAdapter protocolo.

O exemplo a seguir implementa o protocolo GADRTBAdapter:

Objective-C

@interface SampleAdapterSnippets : NSObject <GADRTBAdapter>
@end

Inicializar o adaptador

Google Mobile Ads SDK chama o método setUpWithConfiguration:completionHandler: quando Google Mobile Ads SDK instancia o adaptador de indicadores seguros. Use esse método para inicializar o SDK.

Quando o SDK for totalmente inicializado e estiver pronto para Google Mobile Ads SDK coletar indicadores, chame o GADMediationAdapterSetUpCompletionBlock bloco de conclusão.

Se o adaptador de indicadores seguros não fizer o callback, Google Mobile Ads SDK não coletará indicadores do adaptador de indicadores seguros.

O exemplo a seguir chama o gerenciador de conclusão para informar ao Google Mobile Ads SDK que o SDK foi inicializado:

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

Informar a versão do adaptador e do SDK

O adaptador de indicadores seguros precisa informar a versão do adaptador e do SDK. Google Mobile Ads SDK usa essas versões para relatórios e solução de problemas.

Se o SDK implementar esse adaptador no mesmo binário, você poderá retornar a mesma versão para o adaptador e o SDK.

O exemplo a seguir retorna a versão do 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;
}

O exemplo a seguir retorna a versão do SDK com que o adaptador de indicadores seguros interage:

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;
}

Substitua kSDKVersionString pela string de versão do SDK.

Coletar indicadores

Em cada solicitação de anúncio, Google Mobile Ads SDK coleta indicadores simultaneamente de todos os adaptadores em uma linha de execução em segundo plano.

O exemplo a seguir coleta e retorna indicadores para Google Mobile Ads SDK chamando o gerenciador de conclusão 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);
}

Substitua kSampleSignalPlaceholder pela sua string de indicador seguro.

A coleta de indicadores precisa ser concluída em até um segundo. Se a coleta de indicadores levar mais de um segundo, considere armazenar indicadores em cache no adaptador de indicadores seguros ou no SDK ao inicializar o adaptador.

Se o adaptador de indicadores seguros não conseguir coletar indicadores, chame o gerenciador de conclusão com indicadores nil e um objeto NSError.

Ofuscar indicadores

Ao compartilhar indicadores seguros com bidders e parceiros de curadoria, você precisa ofuscar os indicadores.

Retornar um valor nil para extras de rede de publicidade

Os adaptadores de indicadores seguros não exigem parâmetros extras de rede.

O exemplo a seguir do método +networkExtrasClass retorna um valor nil:

Objective-C

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