Se você tiver um SDK de provedor de indicadores que gere indicadores de lances em tempo real (RTB), desenvolva um adaptador de indicadores seguros para permitir que o Google Mobile Ads SDK colete indicadores do seu SDK.
Google Mobile Ads SDK encaminha seus indicadores para compradores participantes selecionados do Authorized Buyers e do Open Bidding.
O diagrama a seguir ilustra o ciclo de vida de solicitação-resposta para coleta de indicadores seguros:
Um adaptador de indicador seguro é responsável pela inicialização do adaptador e pela coleta de indicadores.
Implementar um adaptador de indicador seguro
Implemente um adaptador de indicadores seguros para Google Mobile Ads SDK e colete indicadores do seu SDK.
Este guia mostra como implementar um adaptador de indicador seguro
implementando o protocolo GADRTBAdapter.
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 cria uma instância do seu 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 bloco de conclusão
GADMediationAdapterSetUpCompletionBlock.
Se o adaptador de indicadores seguros não fizer um retorno de chamada, o Google Mobile Ads SDK não vai coletar indicadores dele.
O exemplo a seguir chama o gerenciador de conclusão para informar 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. O Google Mobile Ads SDK usa essas versões para geração de relatórios e solução de problemas.
Se o SDK implementar esse adaptador no mesmo binário, retorne a mesma versão para o adaptador e o SDK.
O exemplo a seguir retorna a versão do seu 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 seu adaptador de indicador seguro interage:
Objective-C
Substitua kSDKVersionString pela string da versão do SDK.
Coletar indicadores
Em cada solicitação de anúncio, o 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
Substitua kSampleSignalPlaceholder pela sua string de sinal seguro.
A coleta de indicadores precisa ser concluída em um segundo. Se a coleta de indicadores levar mais de um segundo, considere armazenar em cache os indicadores no seu adaptador de indicadores seguros ou no SDK ao inicializar o adaptador.
Se o adaptador de indicadores seguros não 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, é necessário ofuscar os indicadores.
Retorna um valor nil para extras de rede de publicidade.
Adaptadores de indicadores seguros não exigem parâmetros extras de rede adicionais.
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;
}