Sichere Signale

Sichere Signale sind codierte Daten, die auf dem Clientgerät erfasst und an ausgewählte Bieter weitergegeben werden. In dieser Anleitung erfahren Sie, wie Sie mit dem IMA SDK sichere Signale erfassen und an Google Ad Manager senden.

Für die Secure Signals API ist Version 3.29.0 oder höher des IMA SDK for Android erforderlich.

Informationen zum Auswählen von Signalen und Bietern und zum Aktivieren der Freigabe sicherer Signale finden Sie unter Sichere Signale für Bieter freigeben.

Signalanbieter von Drittanbietern verwenden

Wenn Sie sichere Signale verwenden möchten, müssen Sie in Ihrer App eine Adapterklasse für Signalempfänger bereitstellen, um Signale zu erfassen, zu codieren und an das IMA SDK weiterzuleiten.

Folgen Sie der Anleitung des Drittanbieters, um ein Konto bei ihm einzurichten, Build-Abhängigkeiten hinzuzufügen und den Secure Signals-Adapter in Ihrer App einzurichten.

Das IMA SDK für Android initialisiert jeden Secure Signals-Adapter automatisch, ohne dass Sie Ihren Code ändern müssen.

Hier ein Beispiel dafür, wie Sie Ihrem Projekt einen sicheren Signaladapter hinzufügen können:

Benutzerdefinierte Daten senden

Sie können Signale nicht nur von einem Drittanbieter abrufen, sondern auch selbst Signale mit benutzerdefinierten Daten erheben, codieren und senden. Bevor Sie sichere Signale mit benutzerdefinierten Daten senden können, müssen Sie benutzerdefinierte Signale in Ad Manager aktivieren.

Erstellen Sie für jede Anzeigenanfrage ein SecureSignals-Objekt, das Ihre codierten benutzerdefinierten Daten als String enthält. Fügen Sie dann das SecureSignals-Objekt Ihrer Anzeigenanfrage hinzu, indem Sie adsRequest.setSecureSignals() aufrufen.

Hier ein Java-Beispiel:

app/src/main/java/com/example/project name/MainActivity.java

...
private void requestAds(String adTagUrl) {
  // Create the ads request.
  AdsRequest request = sdkFactory.createAdsRequest();
  request.setAdTagUrl(adTagUrl);
  request.setContentProgressProvider(
      () -> {
        if (videoPlayer.getDuration() <= 0) {
          return VideoProgressUpdate.VIDEO_TIME_NOT_READY;
        }
        return new VideoProgressUpdate(
            videoPlayer.getCurrentPosition(), videoPlayer.getDuration());
      });
  
  SecureSignals signal = SecureSignals.create("My encoded signal string");
  request.setSecureSignals(signal);
  
  // Request the ad. After the ad is loaded, onAdsManagerLoaded() will be called.
  adsLoader.requestAds(request);
}
...