Leitfaden zum Einwilligungsmanagement für mobile Apps
Übersicht
Dieses Dokument bietet umfassende Richtlinien für die Implementierung des Einwilligungsmanagements in mobilen Anwendungen und gewährleistet die Einhaltung von Datenschutzbestimmungen wie DSGVO, LGPD und den Anforderungen des IAB Transparency & Consent Framework (TCF). Es befasst sich mit dem ordnungsgemäßen Umgang mit der Nutzereinwilligung für Dienste von Drittanbietern, darunter Werbenetzwerke, Analyseplattformen und andere Tracking-Dienste.
Implementierungsanforderungen
1. Initialisieren Sie keine Dienste von Drittanbietern ohne Zustimmungsüberprüfung
Implementierungsschritte:
- Prüfen, ob der Benutzer eine Zustimmungsentscheidung getroffen hat
- Überprüfen Sie die Zustimmung für den jeweiligen Anbieter/Dienst
- Initialisieren Sie den Dienst nur, wenn beide Bedingungen erfüllt sind
- Wenn für einen bestimmten Anbieter oder Zweck keine Zustimmung erteilt wurde, müssen Sie:
- Überspringen Sie die Initialisierung dieses Dienstes (z. B. Google AdMob).
- Verwenden Sie datenschutzfreundliche Alternativen, sofern verfügbar.
- Beschränken Sie die verfügbaren Funktionen entsprechend Ihrer Produktumsatzstrategie. Beispiel: Bei einer völlig kostenlosen App, deren einzige Einnahmequelle die Anzeige von Werbung ist, können Sie eine freundliche Meldung anzeigen, dass die App ohne Zustimmung zu Marketingzwecken nicht oder nur eingeschränkt verfügbar ist.
2. Zweistufige Zustimmungsprüfung
Führen Sie immer beide Prüfungen gemäß Artikel 7(1) der DSGVO und den IAB TCF-Spezifikationen durch:
Phase 1: Hat der Benutzer eine Entscheidung getroffen?
- Überprüfen Sie, ob der Benutzer mit der Zustimmungsebene interagiert hat
- Wenn keine Entscheidung getroffen wurde, verarbeiten Sie keine personenbezogenen Daten
Phase 2: Stimmt der Benutzer einem bestimmten Zweck zu?
- Prüfen Sie, ob für den jeweiligen Drittanbieterdienst eine Einwilligung erteilt wurde
- Jeder Anbieter/Dienst erfordert eine individuelle Zustimmungsüberprüfung
Benutzer-Workflow-Szenarien
Szenario 1: Normaler Benutzer-Workflow
Ablauf: Benutzer öffnet App → SDK zeigt Zustimmungsebene (falls erforderlich) → Benutzer trifft Auswahl → App fährt mit entsprechenden Diensten fort
Wichtig: Die Navigation mit der Zurück-Schaltfläche oder Gesten sind in unseren mobilen SDKs deaktiviert, sodass der Benutzer die Zustimmungsebene nicht ohne entsprechende Zustimmung schließen kann.
Implementierungsschritte:
- App-Start: Initialisieren Sie die Consent Management Plattform. Verwenden Sie hierfür die Methode checkAndOpen(). Sehen Sie sich die Beispiele in unseren Hilfedokumenten an (iOS, Android)
- Zustimmungsprüfung: Im vorherigen Schritt wird automatisch ermittelt, ob eine Zustimmung erforderlich ist oder nicht, sodass der Benutzer eine informierte Entscheidung über die Zustimmung treffen kann.
- Dienstinitialisierung: Initialisieren Sie Dienste basierend auf den Zustimmungseinstellungen des Benutzers
Implementierungsbeispiel:
// This hypothetical example assumes you have implemented:
// - OneSignal (s1448)
// - Google Ads/AdMob (s1)
// - Google Analytics (s26)
class yourGreatApp {
void function onAppLaunch() {
if shouldInitializeService("s148") {
OneSignal.initialize("your-token")
}
if shouldInitializeService("s1") {
AdMobService.initialize()
}
if shouldInitializeService("s26") {
FirebaseAnalytics.initializeApp("your-token")
}
}
boolean private function shouldInitializeService(string: purposeId):
// Phase 1: Check if user has made any decision
consentStatus = CMPManager.getUserStatus()
if consentStatus.status = "choiceDoesntExist"
return false // Consent Layer was not yet displayed to this client
return CMPManager.shared.getStatusForPurpose(id: purposeId) == "granted"
}
}
Szenario 2: Keine Internetverbindung
Ablauf: Benutzer öffnet App ohne Internet → CMP kann Zustimmungsebene nicht laden → App muss ordnungsgemäß damit umgehen
Kritische Beobachtungen:
- Unser mobiles SDK kann die Konfiguration nicht von Servern abrufen
- Frühere Einwilligungsentscheidungen können weiterhin gültig sein (gemäß Artikel 7(3) der DSGVO zum Widerruf der Einwilligung).
- Die App muss im eingeschränkten Modus funktionieren, ohne personenbezogene Daten zu verarbeiten, falls noch keine Einwilligung vorliegt.
Umsetzungsstrategie:
- Überprüfen Sie, ob möglicherweise noch Einwilligungsdaten aus früheren Sitzungen vorhanden sind (Sie verwenden
getUserStatus()wie im vorherigen Beispiel dafür) - Bei Vorliegen einer vorherigen Einwilligung normal vorgehen
- Wenn keine anhaltende Zustimmung und kein Internet vorhanden ist:
-
- Blockieren Sie alle nicht unbedingt erforderlichen Dienste von Drittanbietern
- Zeigen Sie eine benutzerfreundliche Meldung an, die die Situation erklärt
- Richten Sie den Konnektivitäts-Listener so ein, dass er es erneut versucht, wenn die Verbindung wiederhergestellt ist, und zeigen Sie in diesem Fall die Zustimmungsebene an.
- Erlauben Sie grundlegende App-Funktionen, die keine Verarbeitung personenbezogener Daten erfordern
Überlegungen zur Benutzererfahrung:
- Klare Meldung über eingeschränkte Funktionalität anzeigen
- Implementieren Sie eine Wiederholungsoption, wenn eine Verbindung verfügbar ist
- Erklären Sie, dass keine personenbezogenen Daten weitergegeben werden, bis Sie entsprechende Datenschutzentscheidungen getroffen haben.
- Option zum Fortfahren im eingeschränkten Modus bereitstellen
Szenario 3: Keine Zustimmung erforderlich
Situation: Der Benutzer befindet sich außerhalb der EU und CMP ist so konfiguriert, dass es nur in der EU angezeigt wird → Keine Zustimmungsebene angezeigt
Umsetzungsstrategie:
- Initialisieren Sie die CMP-Konfiguration wie gewohnt
- Erlauben Sie CMP zu bestimmen, ob die Zustimmungsebene angezeigt werden soll mit
checkAndOpen() - Wenn keine Zustimmung erforderlich ist, wird der Benutzerstatus „choiceExists“ zurückgeben und Anbieter und Zwecke werden auf „granted“ gesetzt.
- Initialisieren Sie alle Dienste normal
Auf Änderungen der Einwilligung reagieren
Änderungen der Einwilligung können in mehreren Szenarien erfolgen:
- Der Benutzer öffnet die Zustimmungseinstellungen und ändert seine Präferenzen
- Die Einwilligung läuft ab und muss erneuert werden (diese Einstellung finden Sie unter „Rechtliches“ auf Ihrem CMP-Dashboard).
- Änderungen der gesetzlichen Anforderungen, die eine erneute Einholung der Einwilligung erzwingen
- Benutzer fordert Datenlöschung an
Die checkAndOpen() Die Methode reagiert auf alle diese Situationen. Implementieren Sie einen Listener, der Änderungen der Zustimmung verfolgt. Sie können die didReceiveConsent Rückruf dafür (iOS mit einem Android). Sollte ein bestimmter Anbieter oder Zweck zu irgendeinem Zeitpunkt abgelehnt werden, ergreifen Sie sofort Maßnahmen und sperren Sie die Dienste entsprechend.
Checkliste für Tests
Funktionsprüfung
Normalflussprüfung:
- Die App startet korrekt und zeigt bei Bedarf die Zustimmungsebene an.
- Die Einwilligungsentscheidungen des Benutzers werden ordnungsgemäß aufgezeichnet und respektiert
- Dienste werden nur mit entsprechender Zustimmung initialisiert
- App funktioniert nach Zustimmungsentscheidungen korrekt
Prüfung des Ablehnungsflusses:
- Durch die Benutzerabweisung werden Dienste von Drittanbietern ordnungsgemäß blockiert
- Die App bleibt funktionsfähig oder wechselt in den eingeschränkten Modus, abhängig von Ihrer Umsatzstrategie
Offline-Tests:
- App bewältigt keine Internetverbindung problemlos
- Zwischengespeicherte Einwilligungsdaten werden angemessen verwendet
- Der datenschutzfreundliche Modus wird bei Bedarf aktiviert
- Die Wiederherstellung der Verbindung löst die richtige Wiederholungslogik aus
Timeout-Test:
- Das Timeout der Zustimmungsebene löst einen entsprechenden Fallback aus
- Die App friert während des Timeouts nicht ein oder stürzt ab
- Der Fallback-Modus blockiert die Datenverarbeitung ordnungsgemäß
- Der Benutzer erhält eine klare Statusmitteilung
Anforderungsprüfung
Überprüfung der Datenverarbeitung:
- Es werden keine Trackingdaten gesendet, bevor der Benutzer seine Zustimmungsentscheidung trifft.
- Anbieter-IDs werden den tatsächlichen Diensten korrekt zugeordnet
- Die Sperrung einzelner Dienste funktioniert wie vorgesehen
- Einwilligungsgranularität richtig implementiert
Überprüfung der gesetzlichen Anforderungen:
- Der Widerruf der Einwilligung beendet die Datenverarbeitung sofort
- Betroffenenrechte können über die App ausgeübt werden
- Ordnungsgemäßer Prüfpfad für Zustimmungsentscheidungen
- Rechtsgrundlagen für alle Datenverarbeitungen dokumentiert
Problemlösung
Häufige Probleme und Lösungen
Problem: Dienste werden auch dann initialisiert, wenn die Zustimmung verweigert wird
Ursachen:
- Fehlende Zustimmungsprüfung vor der Dienstinitialisierung
- Falsche Lieferanten-ID-Zuordnung
Solutions:
- Fügen Sie vor der Initialisierung ALLER Dienste von Drittanbietern eine explizite Zustimmungsprüfung hinzu
- Überprüfen Sie, ob die Lieferanten-IDs mit denen in der globalen Lieferantenliste übereinstimmen
- Implementieren Sie eine ordnungsgemäße Synchronisierung zwischen Zustimmung und Dienstinitialisierung
- Dienstinstanzen löschen, wenn die Einwilligung widerrufen wird
Problem: Die Zustimmungsebene wird nie angezeigt
Mögliche Ursachen:
- Falsche CMP-Konfiguration (falsche ID, Domäne usw.)
- Probleme mit der Netzwerkverbindung
- Der Benutzer befindet sich außerhalb der geografischen Zielregion
- Probleme bei der App-Integration
Debugging-Schritte:
- Überprüfen Sie, ob die CMP-Konfiguration mit den Kontoeinstellungen übereinstimmt
- Testen Sie die Netzwerkkonnektivität und die Zugänglichkeit des CMP-Servers
- Überprüfen Sie die Konsolenprotokolle auf Fehlermeldungen
- Testen Sie mit der Force-Open-Zustimmungsebene, um die Integration zu überprüfen
- Bestätigen Sie die Einstellungen für die geografische Ausrichtung im CMP-Dashboard
Checkliste für Implementierungsprioritäten
Hohe Priorität (muss vor dem Start abgeschlossen sein):
- Zustimmungsüberprüfung vor der Initialisierung ALLER Dienste von Drittanbietern implementiert
- Korrekte Fehlerbehandlung bei Timeout-, Netzwerk- und Konfigurationsproblemen
- Die grundlegenden App-Funktionen bleiben erhalten, wenn keine Einwilligung ermittelt werden kann
- Alle Anbieter-IDs wurden überprüft und den tatsächlichen Diensten korrekt zugeordnet
Laufende Verbesserungen:
- Verfolgen Sie die Analysen auf Ihrem CMP-Dashboard, um die Erfolgsquoten der Einwilligung zu ermitteln
- A/B-Tests zur Optimierung der Zustimmungsebene
- Integration mit zusätzlichen Compliance-Frameworks
- Verbesserte Benutzeraufklärung über Datenschutzoptionen
Denken Sie daran: Wenn Sie sich über die Einwilligungsanforderungen nicht sicher sind, wählen Sie immer den datenschutzfreundlicheren Ansatz. Es ist besser, übervorsichtig zu sein, als die Privatsphäre der Nutzer oder gesetzliche Anforderungen zu verletzen.







