Das Google User Messaging Platform (UMP) SDK ist ein Tool für Datenschutz und Mitteilungen, mit dem Sie Datenschutzeinstellungen verwalten können. Weitere Informationen finden Sie unter Datenschutz und Mitteilungen.
Nachrichtentyp erstellen
Erstellen Sie Nutzermitteilungen mit einem der verfügbaren Nutzermitteilungstypen auf dem Tab Datenschutz und Mitteilungen Ihres Ad Manager-Kontos. Das UMP SDK versucht, eine Datenschutzmitteilung anzuzeigen, die mit der in Ihrem Projekt festgelegten Ad Manager-Anwendungs-ID erstellt wurde.
Weitere Informationen finden Sie unter Datenschutz und Mitteilungen.SDK importieren
CocoaPods (bevorzugt)
Am einfachsten lässt sich das SDK mit CocoaPods in ein iOS-Projekt importieren. Öffnen Sie die Podfile-Datei Ihres Projekts und fügen Sie dem Ziel Ihrer App die folgende Zeile hinzu:
pod 'GoogleUserMessagingPlatform'
Führen Sie dann den folgenden Befehl aus:
pod install --repo-updateWenn Sie CocoaPods noch nicht kennen, finden Sie unter CocoaPods verwenden weitere Informationen zum Erstellen und Verwenden von Podfiles.
Swift Package Manager
Das UMP SDK unterstützt auch den Swift Package Manager. Gehen Sie so vor, um das Swift-Paket zu importieren:
Installieren Sie in Xcode das UMP SDK-Swift-Paket, indem Sie zu File > Add Packages… (Datei > Pakete hinzufügen…) gehen.
Suchen Sie in der angezeigten Eingabeaufforderung nach dem GitHub-Repository für das UMP SDK Swift-Paket:
https://github.com/googleads/swift-package-manager-google-user-messaging-platform.gitWählen Sie die Version des UMP SDK-Swift-Pakets aus, die Sie verwenden möchten. Für neue Projekte empfehlen wir die Verwendung von Bis zur nächsten Hauptversion.
Anschließend löst Xcode die Paketabhängigkeiten auf und lädt sie im Hintergrund herunter. Weitere Informationen zum Hinzufügen von Paketabhängigkeiten finden Sie im Artikel von Apple.
Manueller Download
Die andere Möglichkeit besteht darin, das SDK manuell zu importieren.
Ziehen Sie das Framework dann in Ihr Xcode-Projekt und wählen Sie Copy items if needed (Elemente bei Bedarf kopieren) aus.

Anschließend können Sie das Framework mit folgendem Befehl in jede gewünschte Datei einbinden:
Swift
import UserMessagingPlatform
Objective-C
#include <UserMessagingPlatform/UserMessagingPlatform.h>
Anwendungs-ID hinzufügen
Ihre Anwendungs-ID finden Sie in der Ad Manager-Benutzeroberfläche.
Fügen Sie die ID mit dem folgenden Code-Snippet zu Ihrer Info.plist hinzu:
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy</string>
Einwilligungsinformationen des Nutzers abrufen
Sie sollten bei jedem App-Start mit
requestConsentInfoUpdate(with:completionHandler:) eine Aktualisierung der Einwilligungsinformationen des Nutzers anfordern. Mit dieser Anfrage wird Folgendes geprüft:
- Ob eine Einwilligung erforderlich ist. Beispielsweise ist die Einwilligung zum ersten Mal erforderlich oder die vorherige Einwilligungsentscheidung ist abgelaufen.
- Ob ein Einstiegspunkt für Datenschutzoptionen erforderlich ist. Bei einigen Datenschutzmitteilungen müssen Nutzer in Apps jederzeit die Möglichkeit haben, ihre Datenschutzeinstellungen zu ändern.
Swift
// Requesting an update to consent information should be called on every app launch.
ConsentInformation.shared.requestConsentInfoUpdate(with: parameters) {
requestConsentError in
// ...
}
SwiftUI
// Requesting an update to consent information should be called on every app launch.
ConsentInformation.shared.requestConsentInfoUpdate(with: parameters) {
requestConsentError in
// ...
}
Objective-C
// Requesting an update to consent information should be called on every app launch.
[UMPConsentInformation.sharedInstance
requestConsentInfoUpdateWithParameters:parameters
completionHandler:^(NSError *_Nullable requestConsentError) {
// ...
}];
Formular für Datenschutzmitteilungen laden und präsentieren
Nachdem Sie den aktuellen Einwilligungsstatus erhalten haben, rufen Sie
loadAndPresentIfRequired(from:) auf, um alle Formulare zu laden, die zum Einholen der Nutzereinwilligung erforderlich sind. Nach dem Laden werden die Formulare sofort angezeigt.
Swift
try await ConsentForm.loadAndPresentIfRequired(from: viewController)
SwiftUI
try await ConsentForm.loadAndPresentIfRequired(from: nil)
Objective-C
[UMPConsentForm
loadAndPresentIfRequiredFromViewController:viewController
completionHandler:^(NSError *_Nullable loadAndPresentError) {
// Consent gathering process is complete.
}];
Datenschutzoptionen
Einige Formen von Datenschutzmitteilungen werden über einen vom Publisher gerenderten Einstiegspunkt für Datenschutzoptionen angezeigt, sodass Nutzer ihre Datenschutzoptionen jederzeit verwalten können. Weitere Informationen dazu, welche Mitteilung Ihre Nutzer am Einstiegspunkt für die Datenschutzeinstellungen sehen, finden Sie unter Verfügbare Arten von Nutzermitteilungen.
Prüfen, ob ein Einstiegspunkt für Datenschutzoptionen erforderlich ist
Nachdem Sie
requestConsentInfoUpdate(with:completionHandler:) aufgerufen haben, prüfen Sie mit
UMPConsentInformation.sharedInstance.privacyOptionsRequirementStatus, ob für Ihre App ein Einstiegspunkt für die Datenschutzoptionen erforderlich ist. Wenn ein Einstiegspunkt erforderlich ist, fügen Sie Ihrer App ein sichtbares und interaktives UI-Element hinzu, über das das Formular mit den Datenschutzoptionen aufgerufen werden kann. Wenn kein Einstiegspunkt für den Datenschutz erforderlich ist, konfigurieren Sie Ihr UI-Element so, dass es nicht sichtbar und nicht interaktiv ist.
Swift
var isPrivacyOptionsRequired: Bool {
return ConsentInformation.shared.privacyOptionsRequirementStatus == .required
}
Objective-C
- (BOOL)isPrivacyOptionsRequired {
return UMPConsentInformation.sharedInstance.privacyOptionsRequirementStatus ==
UMPPrivacyOptionsRequirementStatusRequired;
}
Eine vollständige Liste der Status für die Anforderungen an Datenschutzoptionen finden Sie unter
UMPPrivacyOptionsRequirementStatus.
Formular für Datenschutzoptionen präsentieren
Wenn der Nutzer mit Ihrem Element interagiert, präsentieren Sie das Formular mit den Datenschutzoptionen:
Swift
try await ConsentForm.presentPrivacyOptionsForm(from: viewController)
SwiftUI
try await ConsentForm.presentPrivacyOptionsForm(from: nil)
Objective-C
[UMPConsentForm presentPrivacyOptionsFormFromViewController:viewController
completionHandler:completionHandler];
Anzeigen mit Nutzereinwilligung anfordern
Bevor Sie Anzeigen anfordern, prüfen Sie mit
UMPConsentInformation.sharedInstance.canRequestAds, ob Sie die Einwilligung des Nutzers eingeholt haben:
Swift
ConsentInformation.shared.canRequestAds
Objective-C
UMPConsentInformation.sharedInstance.canRequestAds;
An den folgenden Stellen können Sie prüfen, ob Sie Anzeigen anfordern können, während Sie die Einwilligung einholen:
- Nachdem das UMP SDK in der aktuellen Sitzung die Einwilligung eingeholt hat.
- Unmittelbar nach dem Aufruf von
requestConsentInfoUpdate(with:completionHandler:). Das UMP SDK hat möglicherweise in der vorherigen App-Sitzung die Einwilligung eingeholt.
Wenn während der Einwilligungserhebung ein Fehler auftritt, prüfen Sie, ob Sie Anzeigen anfordern können. Das UMP SDK verwendet den Einwilligungsstatus aus der vorherigen App-Sitzung.
Redundante Anzeigenanfragen vermeiden
Wenn Sie
UMPConsentInformation.sharedInstance.canRequestAds nach dem Einholen der Einwilligung und nach dem Aufrufen von
requestConsentInfoUpdate(with:completionHandler:) prüfen, sollten Sie darauf achten, dass Ihre Logik redundante Anzeigenanfragen verhindert, die dazu führen könnten, dass beide Prüfungen true zurückgeben. Beispiel: mit einer booleschen Variable.
Test
Wenn Sie die Integration in Ihrer App während der Entwicklung testen möchten, gehen Sie so vor, um Ihr Testgerät programmatisch zu registrieren. Entfernen Sie den Code, mit dem diese Testgeräte-IDs festgelegt werden, bevor Sie Ihre App veröffentlichen.
- Rufen Sie einfach
requestConsentInfoUpdate(with:completionHandler:)an. Suchen Sie in der Logausgabe nach einer Meldung, die in etwa so aussieht wie im folgenden Beispiel. Sie enthält Ihre Geräte-ID und eine Anleitung, wie Sie sie als Testgerät hinzufügen:
<UMP SDK>To enable debug mode for this device, set: UMPDebugSettings.testDeviceIdentifiers = @[2077ef9a63d2b398840261c8221a0c9b]Kopieren Sie die Geräte-ID Ihres Testgeräts in die Zwischenablage.
Ändern Sie Ihren Code so, dass
UMPDebugSettings().testDeviceIdentifiersaufgerufen und eine Liste Ihrer Testgeräte-IDs übergeben wird.Swift
let parameters = RequestParameters() let debugSettings = DebugSettings() debugSettings.testDeviceIdentifiers = ["TEST-DEVICE-HASHED-ID"] parameters.debugSettings = debugSettings // Include the UMPRequestParameters in your consent request. ConsentInformation.shared.requestConsentInfoUpdate( with: parameters, completionHandler: { error in // ... })Objective-C
UMPRequestParameters *parameters = [[UMPRequestParameters alloc] init]; UMPDebugSettings *debugSettings = [[UMPDebugSettings alloc] init]; debugSettings.testDeviceIdentifiers = @[ @"TEST-DEVICE-HASHED-ID" ]; parameters.debugSettings = debugSettings; // Include the UMPRequestParameters in your consent request. [UMPConsentInformation.sharedInstance requestConsentInfoUpdateWithParameters:parameters completionHandler:^(NSError *_Nullable error){ // ... }];
Geografie erzwingen
Mit dem UMP SDK können Sie testen, wie sich Ihre App verhalten würde, wenn sich das Gerät in verschiedenen Regionen wie dem Europäischen Wirtschaftsraum (EWR), dem Vereinigten Königreich und der Schweiz befände. Verwenden Sie dazu
geography. Beachten Sie, dass die Debug-Einstellungen nur auf Testgeräten funktionieren.
Swift
let parameters = RequestParameters()
let debugSettings = DebugSettings()
debugSettings.testDeviceIdentifiers = ["TEST-DEVICE-HASHED-ID"]
debugSettings.geography = .EEA
parameters.debugSettings = debugSettings
// Include the UMPRequestParameters in your consent request.
ConsentInformation.shared.requestConsentInfoUpdate(
with: parameters,
completionHandler: { error in
// ...
})
Objective-C
UMPRequestParameters *parameters = [[UMPRequestParameters alloc] init];
UMPDebugSettings *debugSettings = [[UMPDebugSettings alloc] init];
debugSettings.testDeviceIdentifiers = @[ @"TEST-DEVICE-HASHED-ID" ];
debugSettings.geography = UMPDebugGeographyEEA;
parameters.debugSettings = debugSettings;
// Include the UMPRequestParameters in your consent request.
[UMPConsentInformation.sharedInstance
requestConsentInfoUpdateWithParameters:parameters
completionHandler:^(NSError *_Nullable error){
// ...
}];
Einwilligungsstatus zurücksetzen
Wenn Sie Ihre App mit dem UMP SDK testen, kann es hilfreich sein, den Status des SDK zurückzusetzen, um die erste Installation durch einen Nutzer zu simulieren.
Das SDK bietet hierfür die Methode reset.
Swift
ConsentInformation.shared.reset()
Objective-C
[UMPConsentInformation.sharedInstance reset];
Beispiele auf GitHub
Ein vollständiges Beispiel für die auf dieser Seite beschriebene UMP SDK-Integration finden Sie in der