Sviluppare un adattatore di indicatori sicuri

Se hai un SDK del fornitore di indicatori che genera indicatori per le offerte in tempo reale (RTB), puoi sviluppare un adattatore di indicatori sicuri per consentire a Google Mobile Ads SDK di raccogliere gli indicatori dal tuo SDK.

Google Mobile Ads SDK inoltra i tuoi indicatori agli acquirenti Authorized Buyers e Open Bidding partecipanti selezionati.

Il seguente diagramma illustra il ciclo di vita richiesta-risposta per la raccolta sicura dei segnali:

Un adattatore di indicatori sicuri è responsabile dell'inizializzazione dell'adattatore e della raccolta degli indicatori.

Implementare un adattatore di indicatori sicuri

Implementa un adattatore di indicatori sicuri per Google Mobile Ads SDK per raccogliere gli indicatori dal tuo SDK.

Questa guida spiega come implementare un adattatore per indicatori sicuri implementando il protocollo GADRTBAdapter.

L'esempio seguente implementa il protocollo GADRTBAdapter:

Objective-C

@interface SampleAdapterSnippets : NSObject <GADRTBAdapter>
@end

Inizializzare l'adattatore

Google Mobile Ads SDK chiama il metodo setUpWithConfiguration:completionHandler: quando Google Mobile Ads SDK crea un'istanza dell'adattatore dell'indicatore sicuro. Utilizza questo metodo per inizializzare l'SDK.

Quando l'SDK viene inizializzato completamente ed è pronto per la raccolta dei segnali da parte di Google Mobile Ads SDK, chiama il blocco di completamento GADMediationAdapterSetUpCompletionBlock.

Se l'adattatore per indicatori sicuri non richiama, Google Mobile Ads SDK non raccoglie indicatori dall'adattatore per indicatori sicuri.

L'esempio seguente chiama l'handler di completamento per informare Google Mobile Ads SDK che l'SDK è stato inizializzato correttamente:

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

Segnala la versione dell'adattatore e dell'SDK

L'adattatore dei segnali sicuri deve segnalare sia la versione dell'adattatore sia la versione dell'SDK. Google Mobile Ads SDK utilizza queste versioni per la generazione di report e la risoluzione dei problemi.

Se l'SDK implementa questo adattatore nello stesso binario, puoi restituire la stessa versione sia per l'adattatore sia per l'SDK.

L'esempio seguente restituisce la versione dell'adattatore dell'indicatore sicuro:

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

L'esempio seguente restituisce la versione dell'SDK con cui interagisce l'adattatore dell'indicatore sicuro:

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

Sostituisci kSDKVersionString con la stringa della versione dell'SDK.

Raccogliere indicatori

A ogni richiesta di annuncio, Google Mobile Ads SDK raccoglie simultaneamente i segnali da tutti gli adattatori su un thread in background.

L'esempio seguente raccoglie e restituisce gli indicatori a Google Mobile Ads SDK chiamando il gestore di completamento 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);
}

Sostituisci kSampleSignalPlaceholder con la tua stringa di segnale sicuro.

La raccolta dei segnali deve essere completata entro un secondo. Se la raccolta degli indicatori richiede più di un secondo, valuta la possibilità di memorizzare nella cache gli indicatori nell'adattatore di indicatori sicuri o nell'SDK quando inizializzi l'adattatore.

Se l'adattatore di indicatori sicuri non riesce a raccogliere gli indicatori, chiama il gestore di completamento con indicatori nil e un oggetto NSError.

Offuscare gli indicatori

Quando condividi indicatori sicuri con gli offerenti e i partner di selezione, devi offuscare gli indicatori.

Restituisci un valore nil per gli extra della rete pubblicitaria

Gli adattatori di indicatori sicuri non richiedono parametri aggiuntivi per gli extra di rete.

Il seguente esempio di metodo +networkExtrasClass restituisce un valore nil:

Objective-C

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