Sichere Signale sind codierte Daten, die auf dem Clientgerät erhoben 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 für Android erforderlich.
Informationen zum Auswählen von Signalen und Bietern sowie zum Aktivieren der Freigabe sicherer Signale finden Sie unter Sichere Signale für Bieter freigeben.
Drittanbieter für Signale verwenden
Wenn Sie sichere Signale verwenden möchten, müssen Sie eine Adapterklasse für die Signalerfassung in Ihrer App bereitstellen, um Signale zu erfassen, zu codieren und an das IMA SDK zu übergeben.
Folgen Sie der Anleitung des Drittanbieters, um ein Konto bei ihm einzurichten, Build-Abhängigkeiten hinzuzufügen und den Adapter für sichere Signale in Ihrer App einzurichten.
Das IMA SDK für Android initialisiert automatisch jeden Adapter für sichere Signale, ohne dass Sie zusätzliche Änderungen an Ihrem Code vornehmen müssen.
Hier ist ein Beispiel dafür, wie Sie Ihrem Projekt einen Adapter für sichere Signale hinzufügen können:
Benutzerdefinierte Daten senden
Sie können nicht nur einen Drittanbieter für Signale verwenden, sondern auch 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 das SecureSignals
-Objekt dann Ihrer Anzeigenanfrage hinzu, indem Sie die adsRequest.setSecureSignals()
-Methode aufrufen:
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);
}
...