[Android] 2. API-documentatie
De CMPManager
klasse biedt methoden om gebruikerstoestemming voor gegevensverwerking en tracking te beheren. Deze documentatie behandelt de belangrijkste methoden die beschikbaar zijn voor mobiele app-integratie.
Alle hieronder genoemde voorbeelden zijn afkomstig uit en zijn te vinden op onze Demo-app.
Controleer alstublieft de Verouderde methoden als u al v3 van onze CMP SDK integreert.
initialisatie
UrlConfig()
Stelt de URL-configuratie in voor de Consent Manager. Moet worden geïnitialiseerd met de onderstaande waarde en worden doorgegeven aan de getInstance
methode.
parameters:
-
id
: String - De code-ID die is opgehaald uit uw CMP-dashboard -
domain
: String - Het domein voor toestemmingsbeheer, ook opgehaald uit uw CMP-dashboard -
language
: String - De taalcode (bijv. "EN", "IT", "DE", enz.) -
appName
: String - De naam van uw app, alleen gebruikt voor rapportagedoeleinden.
Voorbeeld:
val urlConfig = UrlConfig(
id = "YOUR_CODE_ID_HERE",
domain = "delivery.consentmanager.net",
language = "EN",
appName = "CMDemoAppKotlin"
)
setActiviteit()
Stelt de activiteit in die de toestemmingslaag zal presenteren. Het zou een ComponentActivity
.
parameters:
-
viewController
: ComponentActivity - De activiteit waarin de toestemmingslaag wordt gepresenteerd.
Returns: Geen
Voorbeeld:
CMPManager.shared.setPresentingViewController(self)
Beheer van toestemmingslagen
getUserStatus()
Retourneert een gedetailleerde momentopname van de huidige toestemmingsstatus en voorkeuren van de gebruiker. Deze methode biedt uitgebreide informatie over de toestemmingskeuzes van de gebruiker, inclusief hun algemene toestemmingsstatus, individuele leveranciersmachtigingen, doelspecifieke toestemmingen en relevante toestemmingsreeksen.
parameters:
- Geen
Returns:
Retourtype: CMPUserStatusResponse
object, uitgelegd in de onderstaande code.
Voorbeeld:
let status = CMPManager.shared.getUserStatus()
var message = "Status: \(status.status)\n\n"
message += "Vendors:\n"
for (vendorId, state) in status.vendors {
message += "- \(vendorId): \(state)\n"
}
message += "\nPurposes:\n"
for (purposeId, state) in status.purposes {
message += "- \(purposeId): \(state)\n"
}
message += "\nTCF: \(status.tcf)\n"
message += "Additional Consent: \(status.addtlConsent)\n"
message += "Regulation: \(status.regulation)"
print(message)
controlerenEnOpenen()
Controleert bij de server of toestemming vereist is en opent indien nodig de toestemmingslaag. Dit zal een netwerkoproep doen naar onze servers via de WKWebView die is gemaakt in onze SDK, één paginaweergave verbruiken in het proces. Deze netwerkoproep stuurt een bericht naar onze backend via JavaScript, die detecteert of het apparaat een geldige toestemming heeft of niet, wat op zijn beurt bepaalt of de toestemmingslaag moet worden weergegeven of niet.
parameters:
-
jumpToSettings
: Een Booleaanse waarde om te bepalen of de weergegeven toestemmingslaag automatisch leidt naar de pagina met een meer gedetailleerde controle over de toestemmingen die door de gebruikers worden gegeven, zodat ze hun keuzes nauwkeuriger kunnen afstemmen (indien ingesteld optrue
) of het standaardscherm met de knoppen (indien ingesteld opfalse
of onderdrukt). -
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid, met als resultaat:true
orfalse
.
Returns: Geen
Voorbeeld:
cmpManager.checkAndOpen { 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"
}
forceOpen()
Opent de toestemmingslaag. Het doet een netwerkoproep naar onze backend, één paginaweergave verbruiken in het proces. Het zal de toestemmingslaag weergeven, waardoor de gebruiker ofwel Alles Accepteert of Alles Afwijst van de keuzes, of, afhankelijk van de jumpToSettings-parameter, hen in staat stelt om de toestemmingen op een meer gedetailleerde manier te beheren.
parameters:
-
jumpToSettings
: Een Booleaanse waarde om te bepalen of de weergegeven toestemmingslaag automatisch leidt naar de pagina met een meer gedetailleerde controle over de toestemmingen die door de gebruikers worden gegeven, zodat ze hun keuzes nauwkeuriger kunnen afstemmen (indien ingesteld optrue
) of het standaardscherm met de knoppen (indien ingesteld opfalse
of onderdrukt). -
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid en die een succes of een fout retourneert.
Returns: Geen
Voorbeeld:
cmpManager.openConsentLayer { result ->
result.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
Toestemmingsstatus
exportCMPInfo()
Exporteert de huidige toestemmingsinformatie die op het apparaat is opgeslagen als een tekenreeks. Deze methode haalt de toestemmingsreeks op uit het gebied SharedPreferences van het apparaat en retourneert deze. Meestal wordt deze informatie doorgegeven aan de importCMPInfo
methode.
Returns: String - De geëxporteerde toestemmingsinformatie
Voorbeeld:
val cmpInfo = CMPManager.shared.exportCMPInfo()
Log.d("Exported CMP info: \(cmpInfo)")
getGoogleConsentModeStatus()
Integreert naadloos met Consent Mode, een Google-technologie die conversie- en analysemodellering mogelijk maakt, waardoor de diensten van Google de gaten in de gegevens kunnen opvullen wanneer gebruikers geen toestemming geven. Deze functie vertaalt de toestemming van de gebruiker van uw CMP naar een formaat dat Firebase Analytics kan begrijpen. U kunt de retour van deze methode dan eenvoudig ophalen en doorgeven aan de Firebase .setConsent-methode.
- Vervolgens wordt Google Analytics bijgewerkt met de huidige toestemmingsstatus van de gebruiker.
parameters:
- Geen
Returns: Map<String, String>
- Een sleutelwaardearray met de vier sleutels voor de Google Consent Mode: .analyticsStorage
, .adStorage
, .adUserData
en .adPersonalization
, en hun respectievelijke waarden in termen van .choiceDoesntExist
, .granted
or .denied
.
Voorbeeld:
val settings = cmpManager.getGoogleConsentModeStatus()
Log.d("CMPDemo", "Google Consent Mode Settings: $settings")
toastMessage = buildString {
append("Google Consent Settings:")
settings.forEach { (key, value) ->
append("\n$key: $value")
}
}
statusvoordoel verkrijgen()
Controleert of toestemming is gegeven voor een specifiek doel en of deze toestemming is opgeslagen op het apparaat. Het controleert het UserDefaults-gebied op de toestemmingen die zijn geaccepteerd of afgewezen en filtert de ID die als parameter is doorgegeven, waarbij true wordt geretourneerd als de toestemming is geaccepteerd of anders false.
parameters:
-
id
: String - De ID van het doel dat gecontroleerd moet worden
Returns: UniqueConsentStatus
- Een enum met de waarden .choiceDoesntExist
indien geen toestemming is gegeven, .granted
or .denied
.
Voorbeeld:
val purposeStatus = cmpManager.getStatusForPurpose("c53")
var message = "Vendor s2789's status: "
switch purposeStatus {
case .choiceDoesntExist: message += "No Choice"
case .granted: message += "Granted"
case .denied: message += "Denied"
@unknown default: message += "No Choice"
}
getStatusForVendor()
Controleert of toestemming is gegeven voor een specifieke leverancier en of deze toestemming is opgeslagen op het apparaat. Het controleert het UserDefaults-gebied op de toestemmingen die zijn geaccepteerd of afgewezen en filtert de ID die als parameter is doorgegeven, waarbij true wordt geretourneerd als de toestemming is geaccepteerd of anders false.
parameters:
-
id
: String - De ID van het doel dat gecontroleerd moet worden
Returns: UniqueConsentStatus
- Een enum met de waarden .choiceDoesntExist
indien geen toestemming is gegeven, .granted
or .denied
.
Voorbeeld:
val vendorStatus = cmpManager.getStatusForVendor("s2789")
var message = "Vendor s2789's status: "
switch vendorStatus {
case .choiceDoesntExist: message += "No Choice"
case .granted: message += "Granted"
case .denied: message += "Denied"
@unknown default: message += "No Choice"
}
Toestemmingswijziging
acceptAll()
Accepteert toestemming voor alle doeleinden en leveranciers, één paginaweergave verbruiken in het proces. Het doet een netwerkoproep naar onze backend via een bericht dat op de WebView wordt geïnjecteerd, wat de acceptatie van alle toestemmingen activeert, volgens de CMP-configuratie. Deze informatie is alleen beschikbaar voor de andere methoden nadat de callback een succes of mislukking retourneert, wat betekent dat het succesvol is verwerkt door onze backend en op het apparaat is opgeslagen.
parameters:
-
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid en die aangeeft of de bewerking is geslaagd of mislukt.
Returns: Geen
Voorbeeld:
cmpManager.acceptAll { result ->
result.onSuccess {
toastMessage = "All consents accepted"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
acceptDoelen()
Accepteert toestemming voor specifieke doeleinden, één paginaweergave verbruiken in het proces. Het doet een netwerkoproep naar onze backend via een bericht dat op de WebView wordt geïnjecteerd, wat de acceptatie van de vastgestelde doelen die als parameter zijn doorgegeven, activeert, volgens de CMP-configuratie. Deze informatie is alleen beschikbaar voor de andere methoden nadat de callback een succes of mislukking retourneert, wat betekent dat het succesvol is verwerkt door onze backend en op het apparaat is opgeslagen.
parameters:
-
purposes
: Lijst - Een lijst met doel-ID's die geaccepteerd moeten worden -
updatePurpose
: Booleaans - Of gerelateerde doeleinden moeten worden bijgewerkt -
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid en die een mislukking of een succes retourneert
Returns: Geen
Voorbeeld:
cmpManager.acceptPurposes(listOf("c52", "c53"), true) { result ->
result.onSuccess {
toastMessage = "Purposes enabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
acceptVerkopers()
Accepteert toestemming voor bepaalde leveranciers, één paginaweergave verbruiken in het proces. Het doet een netwerkoproep naar onze backend via een bericht dat op de WebView wordt geïnjecteerd, wat de acceptatie van de bepaalde leveranciers die als parameter zijn doorgegeven, activeert, volgens de CMP-configuratie. Deze informatie is alleen beschikbaar voor de andere methoden nadat de callback een succes of mislukking retourneert, wat betekent dat het succesvol is verwerkt door onze backend en op het apparaat is opgeslagen.
parameters:
-
vendors
: Lijst - Een lijst met leveranciers-ID's die geaccepteerd moeten worden -
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid
Returns: Geen
Voorbeeld:
cmpManager.acceptVendors(listOf("s2790", "s2791")) { result ->
result.onSuccess {
toastMessage = "Vendors Enabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
importCMPInfo()
Importeert toestemmingsinformatie van een CMP-string. Dit ontvangt een gewone string met de toestemmingsgegevens, die meestal worden verkregen via de exportCMPInfo
methode. Deze informatie wordt opgeslagen in het SharedPreferences-gebied van het apparaat en wordt tegelijkertijd naar onze backend verzonden via een bericht dat in de WebView wordt geïnjecteerd, waarbij één paginaweergave wordt verbruikt.
parameters:
-
cmpString
: String - De CMP-string die moet worden geïmporteerd -
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid en die een mislukking of succes retourneert
Returns: Geen
Voorbeeld:
val cmpString = "Q1FERkg3QVFERkg3QUFmR01CSVRCQkVnQUFBQUFBQUFBQWlnQUFBQUFBQUEjXzUxXzUyXzUzXzU0XzU1XzU2XyNfczI3ODlfczI3OTBfczI3OTFfczI2OTdfczk3MV9VXyMxLS0tIw"
cmpManager.importCMPInfo(cmpString) { result ->
result.onSuccess {
toastMessage = "Vendors Enabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
Alles afwijzen()
Verwerpt toestemming voor alle doeleinden en leveranciers, één paginaweergave verbruiken in het proces. Het doet een netwerkoproep naar onze backend via een bericht dat op de WebView wordt geïnjecteerd, wat de afwijzing van alle toestemmingen zal activeren, volgens de CMP-configuratie. Deze informatie is alleen beschikbaar voor de andere methoden nadat de callback een succes of mislukking retourneert, wat betekent dat het succesvol is verwerkt door onze backend en op het apparaat is opgeslagen.
parameters:
-
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid
Returns: Geen
Voorbeeld:
cmpManager.rejectAll { result ->
result.onSuccess {
toastMessage = "All consents rejected"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
afwijzenDoelen()
Weigert toestemming voor bepaalde doeleinden, één paginaweergave verbruiken in het proces. Het doet een netwerkoproep naar onze backend via een bericht dat op de WebView wordt geïnjecteerd, wat de afwijzing van de bepaalde doelen die als parameter zijn doorgegeven, zal activeren, volgens de CMP-configuratie. Deze informatie is alleen beschikbaar voor de andere methoden nadat de callback een succes of mislukking retourneert, wat betekent dat het succesvol is verwerkt door onze backend en op het apparaat is opgeslagen.
parameters:
-
purposes
:List<String>
- Een lijst met doel-ID's die moeten worden afgewezen -
updateVendor
:Boolean
- Of gerelateerde leveranciers moeten worden bijgewerkt -
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid
Returns: Geen
Voorbeeld:
cmpManager.rejectPurposes(listOf("c52", "c53"), true) { result ->
result.onSuccess {
toastMessage = "Purposes disabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
afwijzenVerkopers()
Verwerpt toestemming voor bepaalde leveranciers, één paginaweergave verbruiken in het proces. Het doet een netwerkoproep naar onze backend via een bericht dat op de WebView wordt geïnjecteerd, wat de afwijzing van de bepaalde leveranciers die als parameter zijn doorgegeven, zal activeren, volgens de CMP-configuratie. Deze informatie is alleen beschikbaar voor de andere methoden nadat de callback een succes of mislukking retourneert, wat betekent dat het succesvol is verwerkt door onze backend en op het apparaat is opgeslagen.
parameters:
-
vendors
: Lijst - Een lijst met leveranciers-ID's die moeten worden afgewezen -
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid en die een mislukking of een succes retourneert
Returns: Geen
Voorbeeld:
cmpManager.rejectVendors(listOf("s2790", "s2791")) { result ->
result.onSuccess {
toastMessage = "Vendors Disabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
resetConsentManagementData()
Reset alle toestemmingsbeheergegevens. Hiermee worden alle SharedPreferences-gebiedsvermeldingen met betrekking tot toestemmingen die door de gebruiker zijn geaccepteerd of afgewezen, volledig gewist. Het is vergelijkbaar met het volledig verwijderen van de app van het apparaat.
parameters:
Geen
Returns: Geen
Voorbeeld:
cmpManager.resetConsentManagementData()
CMPManagerDelegate-evenementen
setOnClickLinkCallback
De SDK biedt een flexibel linkverwerkingsmechanisme waarmee applicaties kunnen aanpassen hoe URL's binnen de toestemmingslaag worden verwerkt. Standaard worden alle links geopend binnen de WebView, maar applicaties kunnen specifieke URL's onderscheppen om ze extern te verwerken wanneer dat nodig is.
cmpManager.setOnClickLinkCallback { url ->
if (url.contains("google.com")) {
// Open Google URLs in external browser
try {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(url)))
true // Return true to indicate we handled the URL
} catch (e: Exception) {
Log.e("DemoApp", "Error opening URL: $url", e)
false
}
} else {
// Let other URLs load in the WebView
false
}
}
didReceiveConsent(toestemming: String, jsonObject: Map )
Dit wordt geactiveerd wanneer de toestemmingslaag is gesloten nadat de gebruiker zijn/haar toestemmingen heeft bijgewerkt OF wanneer methoden worden aangeroepen die wijzigingen in de toestemmingen veroorzaken, zoals acceptAll, rejectAll, acceptVendors, rejectVendors, enz. Dit betekent dat de gebruiker een deel van alle toestemmingen heeft geaccepteerd of afgewezen en dat deze correct zijn opgeslagen op het apparaat.
heeftShowConsentLayer
Dit wordt geactiveerd wanneer de toestemmingslaag daadwerkelijk is weergegeven. Het betekent dat er geen toestemming geldig was in het apparaat, dus er moet een nieuwe worden verzameld.
deedCloseConsentLayer
Dit wordt geactiveerd wanneer de SDK de noodzaak van een toestemming heeft gecontroleerd, maar deze niet nodig was en de laag niet werd weergegeven. Dit betekent dat er al een geldige in het apparaat is, dus een nieuwe is niet nodig en de toestemmingslaag wordt niet weergegeven.
heeft een fout ontvangen
Dit wordt geactiveerd wanneer de SDK een fout tegenkomt en de code retourneert.
Verouderde methoden
Alle onderstaande methoden zijn verouderd en zal volledig worden verwijderd van de SDK van Juli/2025 op.
controleerAlsToestemmingVereistIs()
Controleert of toestemming vereist is voor de gebruiker. Dit zal een netwerkoproep doen naar onze servers via de WebView die is gemaakt in onze SDK, die een bericht naar onze backend zal sturen via JavaScript. Onze backend zal detecteren of het apparaat een geldige toestemming heeft of niet, en het bericht zal worden teruggestuurd naar de WebView, om te bepalen of het moet worden weergegeven of niet, één paginaweergave verbruiken in het proces. Afhankelijk van het geretourneerde bericht, zal de SDK het interpreteren en de resultaten ervan retourneren via de completion handler.
parameters:
-
completion
: (Booleaans) -> Unit - Een afsluiting die wordt aangeroepen met het resultaat, hetzijtrue
orfalse
.
Returns: Geen
Voorbeeld:
cmpManager.checkIfConsentIsRequired { needsConsent ->
toastMessage = "Needs Consent: $needsConsent"
}
controleerMetServerEnOpenIndienNoodzakelijk()
Controleert bij de server of toestemming vereist is en opent indien nodig de toestemmingslaag. Dit zal een netwerkoproep doen naar onze servers via de WebView die is gemaakt in onze SDK, één paginaweergave verbruiken in het proces. Deze netwerkoproep stuurt een bericht naar onze backend via JavaScript, die detecteert of het apparaat een geldige toestemming heeft of niet, wat op zijn beurt bepaalt of de toestemmingslaag moet worden weergegeven of niet.
parameters:
-
completion
: Een afsluiting die wordt aangeroepen wanneer de bewerking is voltooid, met als resultaat:true
orfalse
.
Returns: Geen
Voorbeeld:
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"
}
getAllPurposesIDs()
Haalt alle op het apparaat opgeslagen doel-ID's op, volgens de CMP-configuraties. Deze informatie is pas actueel nadat de toestemming correct is opgeslagen in het gedeelte Gedeelde voorkeuren, dus als u direct controleert nadat u methoden hebt gebruikt die wijzigingen in de toestemming veroorzaken, zoals openConsentLayer
, acceptAll
or rejectAll
bijvoorbeeld, toen Wacht tot de callback van die methoden wordt geactiveerd voordat u de methode benadert hasUserChoice
, om ervoor te zorgen dat de informatie up-to-date is.
Returns: Lijst - Een lijst met ID's voor alle doeleinden
Voorbeeld:
val allPurposes = cmpManager.getAllPurposesIDs()
Log.d("All purposes: \(allPurposes)")
getAllVendorsIDs()
Haalt alle leveranciers-ID's op die op het apparaat zijn opgeslagen, volgens de CMP-configuraties. Deze informatie is pas actueel nadat de toestemming correct is vastgelegd in de SharedPreferences gebied, dus als u direct controleert nadat u methoden hebt gebruikt die wijzigingen in de toestemming veroorzaken, zoals openConsentLayer
, acceptAll
or rejectAll
bijvoorbeeld, toen Wacht tot de callback van die methoden wordt geactiveerd voordat u de methode benadert hasUserChoice
, om ervoor te zorgen dat de informatie up-to-date is.
Returns: Lijst - Een lijst met alle leveranciers-ID's
Voorbeeld:
val allVendors = cmpManager.getAllVendorsIDs()
Log.d("All vendors: \(allVendors)")
getDisabledPurposesIDs()
Haalt de ID's op van alle uitgeschakelde doeleinden die op het apparaat zijn opgeslagen, volgens de CMP-configuraties en de keuzes van de gebruiker. Als de gebruiker alle toestemmingen accepteert, is dit leeg. Deze informatie is pas actueel nadat de toestemming correct is opgeslagen in het gedeelte Gedeelde voorkeuren, dus als u direct controleert nadat u methoden hebt gebruikt die wijzigingen in de toestemming veroorzaken, zoals openConsentLayer
, acceptAll
or rejectAll
bijvoorbeeld, toen Wacht tot de callback van die methoden wordt geactiveerd voordat u de methode benadert hasUserChoice
, om ervoor te zorgen dat de informatie up-to-date is.
Returns: Lijst - Een lijst met ID's voor gehandicaptendoeleinden
Voorbeeld:
val disabledPurposes = cmpManager.getDisabledPurposesIDs()
Log.d("Disabled purposes: \(disabledPurposes)")
getDisabledVendorsIDs()
Haalt de ID's op van alle uitgeschakelde leveranciers die op het apparaat zijn opgeslagen, volgens de CMP-configuraties. Als de gebruiker alle toestemmingen accepteert, is dit leeg. Deze informatie is pas actueel nadat de toestemming correct is opgeslagen in het gedeelte Gedeelde voorkeuren, dus als u direct controleert nadat u methoden hebt gebruikt die wijzigingen in de toestemming veroorzaken, zoals openConsentLayer
, acceptAll
or rejectAll
bijvoorbeeld, toen Wacht tot de callback van die methoden wordt geactiveerd voordat u de methode benadert hasUserChoice
, om ervoor te zorgen dat de informatie up-to-date is.
Returns: Lijst - Een lijst met uitgeschakelde leveranciers-ID's
Voorbeeld:
val disabledVendors = CMPManager.shared.getDisabledVendorsIDs()
Log.d("Disabled vendors: \(disabledVendors)")
getEnabledPurposesIDs()
Haalt de ID's op van alle ingeschakelde doeleinden die op het apparaat zijn opgeslagen, volgens de CMP-configuraties. Als de gebruiker alle toestemmingen afwijst, is dit leeg. Deze informatie is pas actueel nadat de toestemming correct is opgeslagen in het gedeelte Gedeelde voorkeuren, dus als u direct controleert nadat u methoden hebt gebruikt die wijzigingen in de toestemming veroorzaken, zoals openConsentLayer
, acceptAll
or rejectAll
bijvoorbeeld, toen Wacht tot de callback van die methoden wordt geactiveerd voordat u de methode benadert hasUserChoice
, om ervoor te zorgen dat de informatie up-to-date is.
Returns: Lijst - Een lijst met ingeschakelde doel-ID's
Voorbeeld:
val enabledPurposes = cmpManager.getEnabledPurposesIDs()
Log.d("Enabled purposes: \(enabledPurposes)")
getEnabledVendorsIDs()
Haalt de ID's op van alle ingeschakelde leveranciers die op het apparaat zijn opgeslagen. Als de gebruiker alle toestemmingen afwijst, is dit leeg. Deze informatie is pas actueel nadat de toestemming correct is opgeslagen in het gedeelte Gedeelde voorkeuren, dus als u direct controleert nadat u methoden hebt gebruikt die wijzigingen in de toestemming veroorzaken, zoals openConsentLayer
, acceptAll
or rejectAll
bijvoorbeeld, toen Wacht tot de callback van die methoden wordt geactiveerd voordat u de methode benadert hasUserChoice
, om ervoor te zorgen dat de informatie up-to-date is.
Returns: Lijst - Een lijst met ingeschakelde leveranciers-ID's
Voorbeeld:
val enabledVendors = cmpManager.getEnabledVendorsIDs()
Log.d("Enabled vendors: \(enabledVendors)")
heeftDoelToestemming()
Controleert of toestemming is gegeven voor een specifiek doel en of deze toestemming is opgeslagen op het apparaat. Het controleert het SharedPreferences-gebied op de toestemmingen die zijn geaccepteerd of afgewezen en filtert de ID die als parameter is doorgegeven, waarbij true wordt geretourneerd als de toestemming is geaccepteerd of anders false.
parameters:
-
id
: String - De ID van het doel dat gecontroleerd moet worden
Returns: Boolean
- True
als toestemming is gegeven, false
anders-
Voorbeeld:
val hasPurposeConsent = cmpManager.hasPurposeConsent(id: "c53")
Log.d("Has consent for purpose c53: \(hasPurposeConsent)")
heeftGebruikersKeuze()
Controleert of de gebruiker een keuze heeft gemaakt met betrekking tot toestemmingen en of deze toestemming is opgeslagen op het apparaat. Dit betekent dat de gebruiker alle toestemmingen heeft geaccepteerd, ze allemaal heeft afgewezen of een gemengde keuze heeft gemaakt van afgewezen en geaccepteerde toestemmingen, afhankelijk van het CMP-ontwerp, wat de gebruikers in staat kan stellen om sommige toestemmingen toe te staan en andere af te wijzen. Deze informatie is pas actueel nadat de toestemming correct is opgeslagen in het gedeelte Gedeelde voorkeuren, dus als u direct controleert nadat u methoden hebt gebruikt die wijzigingen in de toestemming veroorzaken, zoals openConsentLayer
, acceptAll
or rejectAll
bijvoorbeeld, toen Wacht tot de callback van die methoden wordt geactiveerd voordat u de methode benadert hasUserChoice
, om ervoor te zorgen dat de informatie up-to-date is.
Returns: Boolean
- true
als de gebruiker een keuze heeft gemaakt, false
anders-
Voorbeeld:
val hasChoice = cmpManager.hasUserChoice()
print("User has made a choice: \(hasChoice)")
heeftVendorConsent()
Controleert of er toestemming is gegeven voor een specifieke leverancier en of deze toestemming op het apparaat is opgeslagen, overeenkomstig de CMP-configuraties. Deze informatie is pas actueel nadat de toestemming correct is opgeslagen in het gedeelte Gedeelde voorkeuren, dus als u direct controleert nadat u methoden hebt gebruikt die wijzigingen in de toestemming veroorzaken, zoals openConsentLayer
, acceptAll
or rejectAll
bijvoorbeeld, toen Wacht tot de callback van die methoden wordt geactiveerd voordat u de methode benadert hasUserChoice
, om ervoor te zorgen dat de informatie up-to-date is.
parameters:
-
id
: String - De ID van de leverancier die moet worden gecontroleerd
Returns: Boolean
- True
als toestemming is gegeven, false
anders-
Voorbeeld:
val hasVendorConsent = cmpManager.hasVendorConsent(id: "s2789")
Log.d("Has consent for vendor s2789: \(hasVendorConsent)")