Sichere Signale sind codierte Daten, die auf dem Clientgerät erhoben und für ausgewählte Bieter freigegeben werden. In dieser Anleitung erfahren Sie, wie Sie mit dem IMA SDK sichere Signale erheben und an Google Ad Manager senden.
Für die API für sichere Signale ist Version 3.18.1 oder höher des IMA SDK für iOS 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 in Ihrer App eine Adapterklasse für die Signalerhebung bereitstellen, um Signale zu erheben, zu codieren und an das IMA SDK zu übergeben.
Folgen Sie der Anleitung des Drittanbieters, um ein Konto einzurichten, Frameworks einzufügen, und den Adapter für sichere Signale in Ihrer App einzurichten.
Das IMA SDK für iOS initialisiert automatisch jeden Adapter für sichere Signale, ohne dass zusätzliche Änderungen am Code erforderlich sind.
Hier sehen Sie ein Beispiel dafür, wie Sie Ihrem Projekt einen Adapter für sichere Signale hinzufügen können:

Benutzerdefinierte Daten senden
Neben der Verwendung eines Drittanbieters für Signale können Sie auch Signale mit benutzerdefinierten Daten erheben, codieren und senden. Bevor Sie sichere Signale mit benutzerdefinierten Daten senden können, müssen Sie in Ad Manager benutzerdefinierte Signale aktivieren.
Führen Sie für jede Anzeigenanfrage die folgenden Schritte aus:
- Erstellen Sie ein
IMASecureSignals-Objekt, das Ihre codierten benutzerdefinierten Daten als String enthält. - Fügen Sie das
IMASecureSignals-Objekt Ihrer Anzeigenanfrage hinzu, indem Sie das AttributIMAAdsRequest.secureSignalsfestlegen:
Objective-C
BasicExample/ViewController.m
...
- (void)requestAds {
// Create an ad display container for ad rendering.
IMAAdDisplayContainer *adDisplayContainer =
[[IMAAdDisplayContainer alloc] initWithAdContainer:self.videoView
viewController:self
companionSlots:nil];
// Create an ad request with our ad tag, display container, and optional user context.
IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:kTestAppAdTagUrl
adDisplayContainer:adDisplayContainer
contentPlayhead:self.contentPlayhead
userContext:nil];
IMASecureSignals *signals =
[[IMASecureSignals alloc] initWithCustomData:@"My encoded signal string"];
request.secureSignals = signals;
[self.adsLoader requestAdsWithRequest:request];
}
...
Swift
BasicExample/ViewController.swift
...
private func requestAds() {
// Create ad display container for ad rendering.
let adDisplayContainer = IMAAdDisplayContainer(
adContainer: videoView, viewController: self, companionSlots: nil)
// Create an ad request with our ad tag, display container, and optional user context.
let request = IMAAdsRequest(
adTagUrl: ViewController.testAppAdTagURL,
adDisplayContainer: adDisplayContainer,
contentPlayhead: contentPlayhead,
userContext: nil)
let signals = IMASecureSignals(customData: "My encoded signal string")
request.secureSignals = signals
adsLoader.requestAds(with: request)
}
...