Adapter für sichere Signale entwickeln

Wenn Sie ein SDK für einen Signalanbieter haben, mit dem RTB-Signale (Real-Time Bidding, Echtzeitgebote) generiert werden, können Sie einen Adapter für sichere Signale entwickeln, damit Google Mobile Ads SDK Signale aus Ihrem SDK erfassen kann.

Google Mobile Ads SDK leitet Ihre Signale an ausgewählte teilnehmende Authorized Buyers und Open Bidding-Käufer weiter.

Das folgende Diagramm veranschaulicht den Anfrage-/Antwortzyklus für die sichere Erfassung von Signalen:

Ein Adapter für sichere Signale ist für die Adapterinitialisierung und die Signalerfassung verantwortlich.

Adapter für sichere Signale implementieren

Implementieren Sie einen Adapter für sichere Signale für Google Mobile Ads SDK, um Signale aus Ihrem SDK zu erfassen.

In diesem Leitfaden wird beschrieben, wie Sie einen Adapter für sichere Signale implementieren, indem Sie das GADRTBAdapter-Protokoll implementieren.

Im folgenden Beispiel wird das GADRTBAdapter-Protokoll implementiert:

Objective-C

@interface SampleAdapterSnippets : NSObject <GADRTBAdapter>
@end

Adapter initialisieren

Google Mobile Ads SDK ruft die Methode setUpWithConfiguration:completionHandler: auf, wenn Google Mobile Ads SDK Ihren Adapter für sichere Signale instanziiert. Verwenden Sie diese Methode, um Ihr SDK zu initialisieren.

Wenn Ihr SDK vollständig initialisiert ist und bereit ist, Signale für Google Mobile Ads SDK zu erfassen, rufen Sie den Abschlussblock GADMediationAdapterSetUpCompletionBlock auf.

Wenn Ihr Adapter für sichere Signale keinen Rückruf ausführt, werden in Google Mobile Ads SDK keine Signale von Ihrem Adapter für sichere Signale erfasst.

Im folgenden Beispiel wird der Completion-Handler aufgerufen, um Google Mobile Ads SDK darüber zu informieren, dass Ihr SDK erfolgreich initialisiert wurde:

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

Adapter- und SDK-Version melden

Ihr Adapter für sichere Signale muss sowohl die Adapterversion als auch die SDK-Version melden. Google Mobile Ads SDK verwendet diese Versionen für Berichte und zur Fehlerbehebung.

Wenn Ihr SDK diesen Adapter im selben Binärprogramm implementiert, können Sie für Adapter- und SDK-Version dieselbe Version zurückgeben.

Im folgenden Beispiel wird die Version Ihres Adapters für sichere Signale zurückgegeben:

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

Im folgenden Beispiel wird die Version des SDK zurückgegeben, mit der Ihr Adapter für sichere Signale interagiert:

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

Ersetzen Sie kSDKVersionString durch den String Ihrer SDK-Version.

Signale erfassen

Bei jeder Anzeigenanfrage erfasst Google Mobile Ads SDK gleichzeitig Signale von allen Adaptern in einem Hintergrundthread.

Im folgenden Beispiel werden Signale für Google Mobile Ads SDK erfasst und zurückgegeben, indem der Completion-Handler GADRTBSignalCompletionHandler aufgerufen wird:

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

Ersetzen Sie kSampleSignalPlaceholder durch Ihren sicheren Signalstring.

Die Erfassung von Signalen muss innerhalb einer Sekunde abgeschlossen sein. Wenn die Signalerfassung länger als eine Sekunde dauert, sollten Sie Signale in Ihrem Adapter für sichere Signale oder in Ihrem SDK zwischenspeichern, wenn Sie den Adapter initialisieren.

Wenn Ihr Adapter für sichere Signale keine Signale erfasst, rufen Sie den Completion-Handler mit nil-Signalen und einem NSError-Objekt auf.

Signale verschleiern

Wenn Sie sichere Signale für Bieter und Kuratierungspartner freigeben, müssen Sie die Signale verschleiern.

nil-Wert für Extras für Werbenetzwerke zurückgeben

Für sichere Signaladapter sind keine zusätzlichen Netzwerkparameter erforderlich.

Die folgende +networkExtrasClass-Methode gibt einen nil-Wert zurück:

Objective-C

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