[Android] 2. API-dokumentation
Smakämnen CMPManager
klass tillhandahåller metoder för att hantera användarens samtycke för databehandling och spårning. Den här dokumentationen täcker de huvudsakliga metoderna som är tillgängliga för integration av mobilappar.
Alla de exempel som nämns nedan har extraherats från och finns på vår Demo-app.
Vänligen kolla på föråldrade metoder om du redan integrerar v3 av vår CMP SDK.
Initieringen
UrlConfig()
Ställer in URL-konfigurationen för Consent Manager. Behöver initieras med värdet nedan och skickas till getInstance
metod.
Parametrar:
-
id
: String - The Code-ID retrieved from your CMP dashboard -
domain
: String - The domain for consent management, also retrieved from your CMP dashboard -
language
: String - The language code (e.g., "EN", "IT", "DE", etc) -
appName
: String - The name of your app, used only for reporting purposes.
Exempelvis:
val urlConfig = UrlConfig(
id = "YOUR_CODE_ID_HERE",
domain = "delivery.consentmanager.net",
language = "EN",
appName = "CMDemoAppKotlin"
)
setActivity()
Ställer in den aktivitet som kommer att presentera samtyckeslagret. Det ska vara en ComponentActivity
.
Parametrar:
-
viewController
: ComponentActivity - Aktiviteten där samtyckeslagret kommer att presenteras.
Returnerar: Ingen
Exempelvis:
CMPManager.shared.setPresentingViewController(self)
Consent Layer Management
getUserStatus()
Returnerar en detaljerad ögonblicksbild av användarens aktuella samtyckesstatus och preferenser. Den här metoden ger omfattande information om användarens samtyckesval, inklusive deras övergripande samtyckesstatus, individuella leverantörsbehörigheter, ändamålsspecifika medgivanden och relevanta samtyckessträngar.
Parametrar:
- Ingen
Returnerar:
Returtyp: CMPUserStatusResponse
objekt, förklarat i koden nedan.
Exempelvis:
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)
checkAndOpen()
Kontrollerar med servern om samtycke krävs och öppnar samtyckeslagret vid behov. Detta kommer att göra ett nätverksanrop till våra servrar via WKWebView som skapats i vår SDK, förbrukar en sidvisning i processen. Detta nätverksanrop kommer att skicka ett meddelande till vår backend via JavaScript, som kommer att upptäcka om enheten har ett giltigt samtycke eller inte, vilket i sin tur avgör om samtyckesskiktet behöver visas eller inte.
Parametrar:
-
jumpToSettings
: Ett booleskt värde för att avgöra om samtyckesskiktet som visas automatiskt leder till sidan där en mer detaljerad kontroll över samtycken som ges av användarna, så att de kan finjustera sina val (när inställd påtrue
) eller den ursprungliga standardskärmen med knapparna (när inställd påfalse
eller undertryckt). -
completion
: En stängning som anropas när operationen är klar, med resultatet, antingentrue
orfalse
.
Returnerar: Ingen
Exempelvis:
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()
Öppnar samtyckesskiktet. Den ringer ett nätverkssamtal till vår backend, förbrukar en sidvisning i processen. Det kommer att visa samtyckeslagret som tillåter användaren att antingen acceptera alla eller avvisa alla val, eller, beroende på jumpToSettings-parametern, tillåta dem att kontrollera samtyckena på ett mer detaljerat sätt.
Parametrar:
-
jumpToSettings
: Ett booleskt värde för att avgöra om samtyckesskiktet som visas automatiskt leder till sidan där en mer detaljerad kontroll över samtycken som ges av användarna, så att de kan finjustera sina val (när inställd påtrue
) eller den ursprungliga standardskärmen med knapparna (när inställd påfalse
eller undertryckt). -
completion
: En stängning som anropas när operationen är klar och returnerar antingen en framgång eller ett fel.
Returnerar: Ingen
Exempelvis:
cmpManager.openConsentLayer { result ->
result.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
Status för samtycke
exportCMPIinfo()
Exporterar den aktuella samtyckesinformationen som är lagrad på enheten som en sträng. Den här metoden hämtar samtyckessträngen från området SharedPreferences på enheten och returnerar den. Vanligtvis skickas denna information till importCMPInfo
metod.
Returnerar: String - Den exporterade samtyckesinformationen
Exempelvis:
val cmpInfo = CMPManager.shared.exportCMPInfo()
Log.d("Exported CMP info: \(cmpInfo)")
getGoogleConsentModeStatus()
Integreras sömlöst med Consent Mode, en Google-teknik som möjliggör konvertering och analysmodellering, tillåta Googles tjänster att fylla i dataluckor när användarna inte samtycker. Den här funktionen översätter användarens samtycke från din CMP till ett format som Firebase Analytics kan förstå, så du kan helt enkelt få tillbaka den här metoden och skicka den vidare till Firebase .setConsent-metoden.
- Den uppdaterar sedan Google Analytics med användarens aktuella samtyckesstatus.
Parametrar:
- Ingen
Returnerar: Map<String, String>
- En nyckelvärdesmatris med de fyra Googles samtyckeslägesnycklar: .analyticsStorage
, .adStorage
, .adUserData
och .adPersonalization
, och deras respektive värden i termer av .choiceDoesntExist
, .granted
or .denied
.
Exempelvis:
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")
}
}
getStatusForPurpose()
Kontrollerar om samtycke har getts för ett specifikt ändamål och detta samtycke lagras på enheten. Den kontrollerar området UserDefaults för samtycken som accepterats eller avvisats, och filtrerar ID:t som skickats som en parameter och returnerar sant om samtycket accepterades eller falskt på annat sätt.
Parametrar:
-
id
: String - ID för syftet att kontrollera
Returnerar: UniqueConsentStatus
- En uppräkning med värdena .choiceDoesntExist
om inget samtycke lämnats, .granted
or .denied
.
Exempelvis:
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()
Kontrollerar om samtycke har givits för en specifik leverantör och detta samtycke lagras på enheten. Den kontrollerar området UserDefaults för samtycken som accepterats eller avvisats, och filtrerar ID:t som skickats som en parameter, och returnerar sant om samtycket accepterades eller falskt på annat sätt.
Parametrar:
-
id
: String - ID för syftet att kontrollera
Returnerar: UniqueConsentStatus
- En uppräkning med värdena .choiceDoesntExist
om inget samtycke lämnats, .granted
or .denied
.
Exempelvis:
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"
}
Ändring av samtycke
accepteraAlla()
Accepterar samtycke för alla ändamål och leverantörer, förbrukar en sidvisning i processen. Den gör ett nätverksanrop till vår backend via ett meddelande som injiceras på WebView, vilket kommer att utlösa acceptans av alla samtycken, enligt CMP-konfigurationen. Den här informationen kommer endast att vara tillgänglig för de andra metoderna efter att återuppringningen ger en framgång eller misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och kvarstår på enheten.
Parametrar:
-
completion
: En stängning som anropas när operationen är klar, returnerar misslyckande eller framgång.
Returnerar: Ingen
Exempelvis:
cmpManager.acceptAll { result ->
result.onSuccess {
toastMessage = "All consents accepted"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
acceptPurposes()
Accepterar samtycke för specificerade ändamål, förbrukar en sidvisning i processen. Den gör ett nätverksanrop till vår backend via ett meddelande som injiceras på WebView, vilket kommer att utlösa acceptansen av de bestämda syftena som skickas som en parameter, enligt CMP-konfigurationen. Den här informationen kommer endast att vara tillgänglig för de andra metoderna efter att återuppringningen ger en framgång eller misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och kvarstår på enheten.
Parametrar:
-
purposes
: Lista - En lista över ändamåls-ID att acceptera -
updatePurpose
: Boolean - Om relaterade syften ska uppdateras -
completion
: En stängning som anropas när operationen är klar, vilket returnerar antingen ett misslyckande eller en framgång
Returnerar: Ingen
Exempelvis:
cmpManager.acceptPurposes(listOf("c52", "c53"), true) { result ->
result.onSuccess {
toastMessage = "Purposes enabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
acceptVendors()
Accepterar samtycke för specificerade leverantörer, förbrukar en sidvisning i processen. Den gör ett nätverksanrop till vår backend via ett meddelande som injiceras på WebView, vilket kommer att utlösa acceptansen av de bestämda leverantörerna som skickas som en parameter, enligt CMP-konfigurationen. Den här informationen kommer endast att vara tillgänglig för de andra metoderna efter att återuppringningen ger en framgång eller misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och kvarstår på enheten.
Parametrar:
-
vendors
: Lista - En lista över leverantörs-ID:n att acceptera -
completion
: En stängning som anropas när operationen är klar
Returnerar: Ingen
Exempelvis:
cmpManager.acceptVendors(listOf("s2790", "s2791")) { result ->
result.onSuccess {
toastMessage = "Vendors Enabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
importCMPIinfo()
Importerar samtyckesinformation från en CMP-sträng. Detta kommer att få en vanlig sträng som innehåller samtyckesdata, vanligtvis erhållen via exportCMPInfo
metod. Denna information finns kvar i SharedPreferences-området på enheten och skickas samtidigt till vår backend via ett meddelande som injiceras i WebView, förbrukar en sidvisning i processen.
Parametrar:
-
cmpString
: String - CMP-strängen som ska importeras -
completion
: En stängning som anropas när operationen är klar, vilket returnerar antingen ett misslyckande eller framgång
Returnerar: Ingen
Exempelvis:
val cmpString = "Q1FERkg3QVFERkg3QUFmR01CSVRCQkVnQUFBQUFBQUFBQWlnQUFBQUFBQUEjXzUxXzUyXzUzXzU0XzU1XzU2XyNfczI3ODlfczI3OTBfczI3OTFfczI2OTdfczk3MV9VXyMxLS0tIw"
cmpManager.importCMPInfo(cmpString) { result ->
result.onSuccess {
toastMessage = "Vendors Enabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
avvisaAlla()
Avvisar samtycke för alla ändamål och leverantörer, förbrukar en sidvisning i processen. Den gör ett nätverksanrop till vår backend via ett meddelande som injiceras på WebView, vilket kommer att utlösa avslag på alla samtycken, enligt CMP-konfigurationen. Den här informationen kommer endast att vara tillgänglig för de andra metoderna efter att återuppringningen returnerar en framgång eller ett misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och kvarstår på enheten.
Parametrar:
-
completion
: En stängning som anropas när operationen är klar
Returnerar: Ingen
Exempelvis:
cmpManager.rejectAll { result ->
result.onSuccess {
toastMessage = "All consents rejected"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
rejectPurposes()
Avvisar samtycke för specificerade ändamål, förbrukar en sidvisning i processen. Den gör ett nätverksanrop till vår backend via ett meddelande som injiceras på WebView, vilket kommer att utlösa avvisningen av de bestämda syftena som skickas som en parameter, enligt CMP-konfigurationen. Den här informationen kommer endast att vara tillgänglig för de andra metoderna efter att återuppringningen ger en framgång eller misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och kvarstår på enheten.
Parametrar:
-
purposes
:List<String>
- En lista över ändamåls-ID att avvisa -
updateVendor
:Boolean
- Om relaterade leverantörer ska uppdateras -
completion
: En stängning som anropas när operationen är klar
Returnerar: Ingen
Exempelvis:
cmpManager.rejectPurposes(listOf("c52", "c53"), true) { result ->
result.onSuccess {
toastMessage = "Purposes disabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
rejectVendors()
Avvisar samtycke för specificerade leverantörer, förbrukar en sidvisning i processen. Den gör ett nätverksanrop till vår backend via ett meddelande som injiceras på WebView, vilket kommer att utlösa avvisningen av de bestämda leverantörerna som skickas som en parameter, enligt CMP-konfigurationen. Den här informationen kommer endast att vara tillgänglig för de andra metoderna efter att återuppringningen ger en framgång eller misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och kvarstår på enheten.
Parametrar:
-
vendors
: Lista - En lista över leverantörs-ID att avvisa -
completion
: En stängning som anropas när operationen är klar, vilket returnerar antingen ett misslyckande eller en framgång
Returnerar: Ingen
Exempelvis:
cmpManager.rejectVendors(listOf("s2790", "s2791")) { result ->
result.onSuccess {
toastMessage = "Vendors Disabled"
}.onFailure { error ->
toastMessage = "Error: ${error.message}"
}
}
resetConsentManagementData()
Återställer all samtyckeshanteringsdata. Detta raderar fullständigt alla poster i SharedPreferences-området relaterade till samtycken som accepterats eller avvisats av användaren. Det liknar att helt ta bort appen från enheten.
Parametrar:
Ingen
Returnerar: Ingen
Exempelvis:
cmpManager.resetConsentManagementData()
CMPManagerDelegate-evenemang
setOnClickLinkCallback
SDK tillhandahåller en flexibel länkhanteringsmekanism som tillåter applikationer att anpassa hur URL:er inom samtyckesskiktet hanteras. Som standard öppnas alla länkar i WebView, men applikationer kan fånga upp specifika URL:er för att hantera dem externt vid behov.
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(samtycke: String, jsonObject: Map )
Detta utlöses när samtyckeslagret stängdes efter att användaren uppdaterat sina samtycken ELLER när man åberopar metoder som orsakar ändringar i samtyckena, som acceptAll, rejectAll, acceptVendors, rejectVendors, etc. Det betyder att användaren accepterade eller avvisade några av alla. av samtyckena och att dessa sparades korrekt i enheten.
didShowConsentLayer
Detta utlöses när samtyckeslagret faktiskt visades. Det betyder att det inte fanns ett giltigt samtycke i enheten, så ett nytt bör hämtas.
didCloseConsentLayer
Detta utlöses när SDK:n kontrollerade behovet av ett samtycke, men det behövdes inte och lagret visades inte. Det betyder att det redan finns en giltig i enheten, så en ny är inte nödvändig och tue samtyckeslager kommer inte att visas.
didReceiveError
Detta utlöses när SDK:n stötte på något fel och returnerar dess kod.
Föråldrade metoder
Alla metoderna nedan var utfasade och kommer att tas bort helt från SDK från juli/2025 på.
checkIfConsentIsRequired()
Kontrollerar om samtycke krävs för användaren. Detta kommer att göra ett nätverksanrop till våra servrar via WebView som skapats i vår SDK, som skickar ett meddelande till vår backend via JavaScript. Vår backend kommer att upptäcka om enheten har ett giltigt samtycke eller inte, och meddelandet kommer att skickas tillbaka till WebView och avgör om det behöver visas eller inte, förbrukar en sidvisning i processen. Beroende på meddelandet som returneras kommer SDK:n att tolka det och returnera dess resultat via kompletteringshanteraren.
Parametrar:
-
completion
: (Boolean) -> Enhet - En stängning anropas med resultatet, antingentrue
orfalse
.
Returnerar: Ingen
Exempelvis:
cmpManager.checkIfConsentIsRequired { needsConsent ->
toastMessage = "Needs Consent: $needsConsent"
}
checkWithServerAndOpenIfNecessary()
Kontrollerar med servern om samtycke krävs och öppnar samtyckeslagret vid behov. Detta kommer att göra ett nätverksanrop till våra servrar via WebView skapad i vår SDK, förbrukar en sidvisning i processen. Detta nätverksanrop kommer att skicka ett meddelande till vår backend via JavaScript, som kommer att upptäcka om enheten har ett giltigt samtycke eller inte, vilket i sin tur avgör om samtyckesskiktet måste visas eller inte.
Parametrar:
-
completion
: En stängning som anropas när operationen är klar, med resultatet, antingentrue
orfalse
.
Returnerar: Ingen
Exempelvis:
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()
Hämtar alla ändamåls-ID:n lagrade på enheten, enligt CMP-konfigurationerna. Denna information kommer endast att vara uppdaterad efter att samtycket har kvarhållits korrekt i SharedPreferences-området, så om du kollar direkt efter att du har använt metoder som utlöser ändringar i samtycket som openConsentLayer
, acceptAll
or rejectAll
till exempel då vänta tills återuppringningen från dessa metoder utlöses innan du använder metoden hasUserChoice
, för att säkerställa att informationen är aktuell.
Returnerar: Lista - En lista över ID:n för alla ändamål
Exempelvis:
val allPurposes = cmpManager.getAllPurposesIDs()
Log.d("All purposes: \(allPurposes)")
getAllVendorsIDs()
Hämtar alla leverantörs-ID:n lagrade på enheten, enligt CMP-konfigurationerna. Denna information kommer endast att vara uppdaterad efter att samtycket har behållits korrekt i SharedPreferences område, så om du kollar direkt efter att du har använt metoder som utlöser ändringar i samtycket som openConsentLayer
, acceptAll
or rejectAll
till exempel då vänta tills återuppringningen från dessa metoder utlöses innan du använder metoden hasUserChoice
, för att säkerställa att informationen är aktuell.
Returnerar: Lista - En lista över alla leverantörs-ID:n
Exempelvis:
val allVendors = cmpManager.getAllVendorsIDs()
Log.d("All vendors: \(allVendors)")
getDisabledPurposesIDs()
Hämtar ID:n för alla inaktiverade syften som är lagrade på enheten, enligt CMP-konfigurationerna och användarvalen. Om användaren accepterar alla samtycken kommer detta att vara tomt. Denna information kommer endast att vara uppdaterad efter att samtycket har kvarhållits korrekt i SharedPreferences-området, så om du kollar direkt efter att du har använt metoder som utlöser ändringar i samtycket som openConsentLayer
, acceptAll
or rejectAll
till exempel då vänta tills återuppringningen från dessa metoder utlöses innan du använder metoden hasUserChoice
, för att säkerställa att informationen är aktuell.
Returnerar: Lista - En lista över funktionshindrade ID:n
Exempelvis:
val disabledPurposes = cmpManager.getDisabledPurposesIDs()
Log.d("Disabled purposes: \(disabledPurposes)")
getDisabledVendorsIDs()
Hämtar ID:n för alla inaktiverade leverantörer lagrade på enheten, enligt CMP-konfigurationerna. Om användaren accepterar alla samtycken kommer detta att vara tomt. Denna information kommer endast att vara uppdaterad efter att samtycket har kvarhållits korrekt i SharedPreferences-området, så om du kollar direkt efter att du har använt metoder som utlöser ändringar i samtycket som openConsentLayer
, acceptAll
or rejectAll
till exempel då vänta tills återuppringningen från dessa metoder utlöses innan du använder metoden hasUserChoice
, för att säkerställa att informationen är aktuell.
Returnerar: Lista - En lista över inaktiverade leverantörs-ID
Exempelvis:
val disabledVendors = CMPManager.shared.getDisabledVendorsIDs()
Log.d("Disabled vendors: \(disabledVendors)")
getEnabledPurposesIDs()
Hämtar ID:n för alla aktiverade ändamål som är lagrade på enheten, enligt CMP-konfigurationerna. Om användaren avvisar alla samtycken kommer detta att vara tomt. Denna information kommer endast att vara uppdaterad efter att samtycket har kvarhållits korrekt i SharedPreferences-området, så om du kollar direkt efter att du har använt metoder som utlöser ändringar i samtycket som openConsentLayer
, acceptAll
or rejectAll
till exempel då vänta tills återuppringningen från dessa metoder utlöses innan du använder metoden hasUserChoice
, för att säkerställa att informationen är aktuell.
Returnerar: Lista - En lista över aktiverade ändamåls-ID:n
Exempelvis:
val enabledPurposes = cmpManager.getEnabledPurposesIDs()
Log.d("Enabled purposes: \(enabledPurposes)")
getEnabledVendorsIDs()
Hämtar ID:n för alla aktiverade leverantörer lagrade på enheten. Om användaren avvisar alla samtycken kommer detta att vara tomt. Denna information kommer endast att vara uppdaterad efter att samtycket har kvarhållits korrekt i SharedPreferences-området, så om du kollar direkt efter att du har använt metoder som utlöser ändringar i samtycket som openConsentLayer
, acceptAll
or rejectAll
till exempel då vänta tills återuppringningen från dessa metoder utlöses innan du använder metoden hasUserChoice
, för att säkerställa att informationen är aktuell.
Returnerar: Lista - En lista över aktiverade leverantörs-ID:n
Exempelvis:
val enabledVendors = cmpManager.getEnabledVendorsIDs()
Log.d("Enabled vendors: \(enabledVendors)")
hasPurposeConsent()
Kontrollerar om samtycke har getts för ett specifikt ändamål och detta samtycke lagras på enheten. Den kontrollerar området SharedPreferences för samtycken som accepterats eller avvisats, och filtrerar ID:t som skickats som en parameter och returnerar sant om samtycket accepterades eller falskt på annat sätt.
Parametrar:
-
id
: String - ID för syftet att kontrollera
Returnerar: Boolean
- True
om samtycke ges, false
annat
Exempelvis:
val hasPurposeConsent = cmpManager.hasPurposeConsent(id: "c53")
Log.d("Has consent for purpose c53: \(hasPurposeConsent)")
hasUserChoice()
Kontrollerar om användaren har gjort ett val angående samtycken och detta samtycke lagras på enheten. Det betyder att användaren antingen accepterade alla samtycken, avvisade dem alla eller gjorde ett blandat val av avvisade och accepterade samtycken, beroende på CMP-designen, vilket kan tillåta användarna att tillåta några av samtyckena och avvisa andra. Denna information kommer endast att vara uppdaterad efter att samtycket har kvarhållits korrekt i SharedPreferences-området, så om du kollar direkt efter att du har använt metoder som utlöser ändringar i samtycket som openConsentLayer
, acceptAll
or rejectAll
till exempel då vänta tills återuppringningen från dessa metoder utlöses innan du använder metoden hasUserChoice
, för att säkerställa att informationen är aktuell.
Returnerar: Boolean
- true
om användaren har gjort ett val, false
annat
Exempelvis:
val hasChoice = cmpManager.hasUserChoice()
print("User has made a choice: \(hasChoice)")
hasVendorConsent()
Kontrollerar om samtycke har givits för en specifik leverantör och detta samtycke lagras på enheten, enligt CMP-konfigurationerna. Denna information kommer endast att vara uppdaterad efter att samtycket har kvarhållits korrekt i SharedPreferences-området, så om du kollar direkt efter att du har använt metoder som utlöser ändringar i samtycket som openConsentLayer
, acceptAll
or rejectAll
till exempel då vänta tills återuppringningen från dessa metoder utlöses innan du använder metoden hasUserChoice
, för att säkerställa att informationen är aktuell.
Parametrar:
-
id
: String - ID för leverantören som ska kontrolleras
Returnerar: Boolean
- True
om samtycke ges, false
annat
Exempelvis:
val hasVendorConsent = cmpManager.hasVendorConsent(id: "s2789")
Log.d("Has consent for vendor s2789: \(hasVendorConsent)")