Info
Inhalt

[Android] 2. API-Dokumentation

Die CMPManager Die Klasse bietet Methoden zum Verwalten der Benutzereinwilligung zur Datenverarbeitung und -verfolgung. Diese Dokumentation behandelt die wichtigsten verfügbaren Methoden für die Integration mobiler Apps.

Initialisierung

Objekt UrlConfig(:UrlConfig)

Legt die URL-Konfiguration für die Consent Manager. Muss mit dem untenstehenden Wert initialisiert und an den getInstance Methode. 

Parameter:

  • id: String – Die CMP-ID
  • domain: String – Die Domäne für das Einwilligungsmanagement
  • language: String - Der Sprachcode (z. B. „EN“)
  • appName: String - Der Name Ihrer App

Beispiel:

val urlConfig = UrlConfig(
    id = "YOUR_CODE_ID_HERE",
    domain = "delivery.consentmanager.net",
    language = "EN",
    appName = "CMDemoAppKotlin"
)

setActivity(Aktivität: Aktivität)

Legt die Aktivität fest, die die Zustimmungsebene präsentiert. Es sollte eine ComponentActivity

Parameter:

  • viewController: ComponentActivity – Die Aktivität, bei der die Zustimmungsebene angezeigt wird.

Rücksendung: Keine

Beispiel:

CMPManager.shared.setPresentingViewController(self)

checkIfConsentIsRequired(Vervollständigung: (Boolesch) -> Einheit)

Parameter:

  • completion: (Boolean) -> Unit - Eine Closure, die mit dem Ergebnis aufgerufen wird, entweder true or false.

Rücksendung: Keine

Beispiel:

cmpManager.checkIfConsentIsRequired { needsConsent ->
	toastMessage = "Needs Consent: $needsConsent"
}

checkWithServerAndOpenIfNecessary(Abschluss: (Ergebnis ) -> Einheit)

Prüft beim Server, ob eine Zustimmung erforderlich ist, und öffnet bei Bedarf die Zustimmungsebene. Dadurch wird ein Netzwerkaufruf an unsere Server über die in unserem SDK erstellte WebView durchgeführt. einen Seitenaufruf verbrauchen im Prozess. Dieser Netzwerkaufruf sendet über JavaScript eine Nachricht an unser Backend, das erkennt, ob das Gerät über eine gültige Zustimmung verfügt oder nicht, was wiederum bestimmt, ob die Zustimmungsebene angezeigt werden muss oder nicht.  

Parameter:

  • completion: Ein Abschluss, der aufgerufen wird, wenn die Operation abgeschlossen ist, mit dem Ergebnis entweder true or false.

Rücksendung: Keine

Beispiel:

cmpManager.checkWithServerAndOpenIfNecessary { result ->
    result.onSuccess {
	    toastMessage = "Check and Open Consent Layer operation done successfully."
    }.onFailure { error ->
    	toastMessage = "Check and Open Consent Layer operation failed with error: $error"
}

openConsentLayer(Abschluss: (Ergebnis ) -> Einheit)

Parameter:

  • completion: Ein Abschluss, der aufgerufen wird, wenn der Vorgang abgeschlossen ist und entweder eine erfolgreiche Ausführung oder einen Fehler zurückgibt. 

Rücksendung: Keine

Beispiel:

cmpManager.openConsentLayer { result ->
	result.onFailure { error ->
    	toastMessage = "Error: ${error.message}"
	}
}

exportCMPInfo()

Exportiert die aktuell auf dem Gerät gespeicherten Zustimmungsinformationen als Zeichenfolge. Diese Methode ruft die Zustimmungszeichenfolge aus dem Bereich SharedPreferences des Geräts ab und gibt sie zurück. Normalerweise werden diese Informationen an den importCMPInfo Methode.

Rücksendung: String - Die exportierten Einwilligungsinformationen

Beispiel:

val cmpInfo = CMPManager.shared.exportCMPInfo()
Log.d("Exported CMP info: \(cmpInfo)")

hatZweckZustimmung(id: String)

Parameter:

  • id: String - Die ID des zu prüfenden Zwecks

Rücksendung: Boolean - True wenn eine Einwilligung vorliegt, false Andernfalls

Beispiel:

val hasPurposeConsent = cmpManager.hasPurposeConsent(id: "c53")
Log.d("Has consent for purpose c53: \(hasPurposeConsent)")

hatBenutzerauswahl()

Überprüft, ob der Benutzer eine Auswahl bezüglich der Einwilligungen getroffen hat und diese Einwilligung auf dem Gerät gespeichert ist. Das bedeutet, dass der Benutzer entweder alle Einwilligungen akzeptiert, alle abgelehnt oder eine gemischte Auswahl aus abgelehnten und akzeptierten Einwilligungen getroffen hat, je nach CMP-Design, was es den Benutzern ermöglichen könnte, einige der Einwilligungen zuzulassen und andere abzulehnen. Diese Informationen sind erst dann aktuell, wenn die Zustimmung im Bereich „SharedPreferences“ ordnungsgemäß gespeichert wurde., wenn Sie also direkt nach der Verwendung von Methoden prüfen, die Änderungen in der Zustimmung auslösen, wie openConsentLayer, acceptAll or rejectAll, dann zum Beispiel Warten Sie, bis der Rückruf dieser Methoden ausgelöst wird, bevor Sie auf die Methode zugreifen. hasUserChoice, um sicherzustellen, dass die Informationen aktuell sind.

Rücksendung: Boolean - true wenn der Benutzer eine Auswahl getroffen hat, false Andernfalls

Beispiel:

val hasChoice = cmpManager.hasUserChoice()
print("User has made a choice: \(hasChoice)")

hatVendorConsent(id: String)

Parameter:

  • id: String - Die ID des zu prüfenden Lieferanten

Rücksendung: Boolean - True wenn eine Einwilligung vorliegt, false Andernfalls

Beispiel:

val hasVendorConsent = cmpManager.hasVendorConsent(id: "s2789")
Log.d("Has consent for vendor s2789: \(hasVendorConsent)")

Zweck- und Lieferantenmanagement

getAllPurposesIDs()

Ruft gemäß den CMP-Konfigurationen alle auf dem Gerät gespeicherten Zweck-IDs ab. Diese Informationen sind erst dann aktuell, wenn die Zustimmung im Bereich „SharedPreferences“ ordnungsgemäß gespeichert wurde., wenn Sie also direkt nach der Verwendung von Methoden prüfen, die Änderungen in der Zustimmung auslösen, wie openConsentLayer, acceptAll or rejectAll, dann zum Beispiel Warten Sie, bis der Rückruf dieser Methoden ausgelöst wird, bevor Sie auf die Methode zugreifen. hasUserChoice, um sicherzustellen, dass die Informationen aktuell sind.

Rücksendung: Liste - Eine Liste aller IDs

Beispiel:

val allPurposes = cmpManager.getAllPurposesIDs()
Log.d("All purposes: \(allPurposes)")

getAllVendorsIDs()

Ruft gemäß den CMP-Konfigurationen alle auf dem Gerät gespeicherten Anbieter-IDs ab. Diese Informationen sind erst dann aktuell, wenn die Zustimmung ordnungsgemäß in den SharedPreferences gespeichert wurde. Gesamtfläche unserer Sitzes, wenn Sie also direkt nach der Verwendung von Methoden prüfen, die Änderungen in der Zustimmung auslösen, wie openConsentLayer, acceptAll or rejectAll, dann zum Beispiel Warten Sie, bis der Rückruf dieser Methoden ausgelöst wird, bevor Sie auf die Methode zugreifen. hasUserChoice, um sicherzustellen, dass die Informationen aktuell sind.

Rücksendung: Liste - Eine Liste aller Lieferanten-IDs

Beispiel:

val allVendors = cmpManager.getAllVendorsIDs()
Log.d("All vendors: \(allVendors)")

getDisabledPurposesIDs()

Ruft die IDs aller deaktivierten Zwecke ab, die auf dem Gerät gespeichert sind, entsprechend den CMP-Konfigurationen und den Benutzereinstellungen. Wenn der Benutzer alle Zustimmungen akzeptiert, ist dieses Feld leer.  Diese Informationen sind erst dann aktuell, wenn die Zustimmung im Bereich „SharedPreferences“ ordnungsgemäß gespeichert wurde., wenn Sie also direkt nach der Verwendung von Methoden prüfen, die Änderungen in der Zustimmung auslösen, wie openConsentLayer, acceptAll or rejectAll, dann zum Beispiel Warten Sie, bis der Rückruf dieser Methoden ausgelöst wird, bevor Sie auf die Methode zugreifen. hasUserChoice, um sicherzustellen, dass die Informationen aktuell sind.

Rücksendung: Liste - Eine Liste deaktivierter Zweck-IDs

Beispiel:

val disabledPurposes = cmpManager.getDisabledPurposesIDs()
Log.d("Disabled purposes: \(disabledPurposes)")

getDisabledVendorsIDs()

Ruft die IDs aller deaktivierten Anbieter ab, die auf dem Gerät gespeichert sind, gemäß den CMP-Konfigurationen. Wenn der Benutzer alle Zustimmungen akzeptiert, ist dieses Feld leer. Diese Informationen sind erst dann aktuell, wenn die Zustimmung im Bereich „SharedPreferences“ ordnungsgemäß gespeichert wurde., wenn Sie also direkt nach der Verwendung von Methoden prüfen, die Änderungen in der Zustimmung auslösen, wie openConsentLayer, acceptAll or rejectAll, dann zum Beispiel Warten Sie, bis der Rückruf dieser Methoden ausgelöst wird, bevor Sie auf die Methode zugreifen. hasUserChoice, um sicherzustellen, dass die Informationen aktuell sind.

Rücksendung: Liste - Eine Liste deaktivierter Lieferanten-IDs

Beispiel:

val disabledVendors = CMPManager.shared.getDisabledVendorsIDs()
Log.d("Disabled vendors: \(disabledVendors)")

getEnabledPurposesIDs()

Ruft die IDs aller aktivierten Zwecke ab, die auf dem Gerät gespeichert sind, gemäß den CMP-Konfigurationen. Wenn der Benutzer alle Zustimmungen ablehnt, ist dieses Feld leer. Diese Informationen sind erst dann aktuell, wenn die Zustimmung im Bereich „SharedPreferences“ ordnungsgemäß gespeichert wurde., wenn Sie also direkt nach der Verwendung von Methoden prüfen, die Änderungen in der Zustimmung auslösen, wie openConsentLayer, acceptAll or rejectAll, dann zum Beispiel Warten Sie, bis der Rückruf dieser Methoden ausgelöst wird, bevor Sie auf die Methode zugreifen. hasUserChoice, um sicherzustellen, dass die Informationen aktuell sind.

Rücksendung: Liste - Eine Liste der aktivierten Zweck-IDs

Beispiel:

val enabledPurposes = cmpManager.getEnabledPurposesIDs()
Log.d("Enabled purposes: \(enabledPurposes)")

getEnabledVendorsIDs()

Ruft die IDs aller aktivierten Anbieter ab, die auf dem Gerät gespeichert sind. Wenn der Benutzer alle Zustimmungen ablehnt, ist dieses Feld leer. Diese Informationen sind erst dann aktuell, wenn die Zustimmung im Bereich „SharedPreferences“ ordnungsgemäß gespeichert wurde., wenn Sie also direkt nach der Verwendung von Methoden prüfen, die Änderungen in der Zustimmung auslösen, wie openConsentLayer, acceptAll or rejectAll, dann zum Beispiel Warten Sie, bis der Rückruf dieser Methoden ausgelöst wird, bevor Sie auf die Methode zugreifen. hasUserChoice, um sicherzustellen, dass die Informationen aktuell sind.

Rücksendung: Liste - Eine Liste der aktivierten Lieferanten-IDs

Beispiel:

val enabledVendors = cmpManager.getEnabledVendorsIDs()
Log.d("Enabled vendors: \(enabledVendors)")

acceptAll(Abschluss: (Ergebnis ) -> Einheit)

Parameter:

  • completion: Ein Abschluss, der aufgerufen wird, wenn der Vorgang abgeschlossen ist und einen Fehler oder Erfolg zurückgibt.

Rücksendung: Keine

Beispiel:

cmpManager.acceptAll { result ->
    result.onSuccess {
	    toastMessage = "All consents accepted"
  	}.onFailure { error ->
		toastMessage = "Error: ${error.message}"
	}
}

AkzeptierenZwecke(Zwecke: Liste , updatePurpose: Boolean, Abschluss: (Ergebnis ) -> Einheit)

Parameter:

  • purposes: Liste - Eine Liste der zu akzeptierenden Zweck-IDs
  • updatePurpose: Boolean - Gibt an, ob verwandte Zwecke aktualisiert werden sollen
  • completion: Ein Abschluss, der aufgerufen wird, wenn der Vorgang abgeschlossen ist und entweder einen Fehler oder einen Erfolg zurückgibt

Rücksendung: Keine

Beispiel:

cmpManager.acceptPurposes(listOf("c52", "c53"), true) { result ->
	  	result.onSuccess {
	  	toastMessage = "Purposes enabled"
  	}.onFailure { error ->
  		toastMessage = "Error: ${error.message}"
    }
}

acceptVendors(Anbieter: Liste , Abschluss: (Ergebnis ) -> Einheit)

Parameter:

  • vendors: Liste - Eine Liste der zu akzeptierenden Lieferanten-IDs
  • completion: Ein Abschluss, der aufgerufen wird, wenn der Vorgang abgeschlossen ist

Rücksendung: Keine

Beispiel:

cmpManager.acceptVendors(listOf("s2790", "s2791")) { result ->
	result.onSuccess {
		toastMessage = "Vendors Enabled"
	}.onFailure { error ->
		toastMessage = "Error: ${error.message}"
	}
}

importCMPInfo(cmpString: String)

Parameter:

  • cmpString: String – Der zu importierende CMP-String
  • completion: Ein Abschluss, der aufgerufen wird, wenn der Vorgang abgeschlossen ist und entweder einen Fehler oder einen Erfolg zurückgibt

Rücksendung: Keine

Beispiel:

val cmpString = "Q1FERkg3QVFERkg3QUFmR01CSVRCQkVnQUFBQUFBQUFBQWlnQUFBQUFBQUEjXzUxXzUyXzUzXzU0XzU1XzU2XyNfczI3ODlfczI3OTBfczI3OTFfczI2OTdfczk3MV9VXyMxLS0tIw"
cmpManager.importCMPInfo(cmpString) { result ->
	result.onSuccess {
		toastMessage = "Vendors Enabled"
	}.onFailure { error ->
		toastMessage = "Error: ${error.message}"
	}
}

rejectAll(Abschluss: (Ergebnis ) -> Einheit)

Parameter:

  • completion: Ein Abschluss, der aufgerufen wird, wenn der Vorgang abgeschlossen ist

Rücksendung: Keine

Beispiel:

cmpManager.rejectAll { result ->
	result.onSuccess {
		toastMessage = "All consents rejected"
	}.onFailure { error ->
		toastMessage = "Error: ${error.message}"
	}
}

rejectPurposes(Zwecke: Liste , updateVendor: Boolean, Abschluss: (Ergebnis ) -> Einheit)

Parameter:

  • purposes: List<String> - Eine Liste der abzulehnenden Zweck-IDs
  • updateVendor: Boolean - Ob zugehörige Anbieter aktualisiert werden sollen
  • completion: Ein Abschluss, der aufgerufen wird, wenn der Vorgang abgeschlossen ist

Rücksendung: Keine

Beispiel:

cmpManager.rejectPurposes(listOf("c52", "c53"), true) { result ->
    result.onSuccess {
      toastMessage = "Purposes disabled"
    }.onFailure { error ->
      toastMessage = "Error: ${error.message}"
	}
}

rejectVendors(Anbieter: Liste , Abschluss: (Ergebnis ) -> Einheit)

Parameter:

  • vendors: Liste - Eine Liste der abzulehnenden Lieferanten-IDs
  • completion: Ein Abschluss, der aufgerufen wird, wenn der Vorgang abgeschlossen ist und entweder einen Fehler oder einen Erfolg zurückgibt

Rücksendung: Keine

Beispiel:

cmpManager.rejectVendors(listOf("s2790", "s2791")) { result ->
	result.onSuccess {
		toastMessage = "Vendors Disabled"
	}.onFailure { error ->
		toastMessage = "Error: ${error.message}"
	}
}

zurücksetzenConsentManagementData()

Parameter:

Keine

Rücksendung: Keine

Beispiel:

cmpManager.resetConsentManagementData()

CMPManagerDelegate-Ereignisse

didReceiveConsent(Zustimmung: String, jsonObject: [String: Beliebig])

Dies wird ausgelöst, wenn die Zustimmungsebene geschlossen wurde, nachdem der Benutzer seine Zustimmungen aktualisiert hatte, ODER wenn Methoden aufgerufen werden, die Änderungen an den Zustimmungen bewirken, wie „acceptAll“, „rejectAll“, „acceptVendors“, „rejectVendors“ usw. Dies bedeutet, dass der Benutzer einige oder alle Zustimmungen akzeptiert oder abgelehnt hat und dass diese korrekt auf dem Gerät gespeichert wurden.

didShowConsentLayer

Dies wird ausgelöst, wenn die Zustimmungsebene tatsächlich angezeigt wurde. Es bedeutet, dass auf dem Gerät keine gültige Zustimmung vorhanden war und daher eine neue eingeholt werden muss.

didCloseConsentLayer


Dies wird ausgelöst, wenn das SDK die Notwendigkeit einer Zustimmung überprüft hat, diese aber nicht erforderlich war und die Ebene nicht angezeigt wurde. Das bedeutet, dass bereits eine gültige Zustimmung im Gerät vorhanden ist, sodass keine neue Zustimmung erforderlich ist und die Zustimmungsebene nicht angezeigt wird.

hatFehler erhalten

Dies wird ausgelöst, wenn beim SDK ein Fehler auftritt und der Code zurückgegeben wird.

 

Nach oben