Info
Innehåll

[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.

Initieringen

Objekt UrlConfig(:UrlConfig)

Ställer in URL-konfigurationen för Consent Manager. Behöver initieras med värdet nedan och skickas till getInstance metod. 

Parametrar:

  • id: Sträng - CMP ID
  • domain: String - Domänen för samtyckeshantering
  • language: String - Språkkoden (t.ex. "EN")
  • appName: String – Namnet på din app

Exempelvis:

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

setActivity(aktivitet: Aktivitet)

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)

checkIfConsentIsRequired(komplettering: (Boolean) -> Enhet)

Parametrar:

  • completion: (Boolean) -> Enhet - En stängning anropas med resultatet, antingen true or false.

Returnerar: Ingen

Exempelvis:

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

checkWithServerAndOpenIfNecessary(komplettering: (Resultat ) -> Enhet)

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, antingen true or false.

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"
}

openConsentLayer(komplettering: (Resultat ) -> Enhet)

Parametrar:

  • 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}"
	}
}

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)")

hasPurposeConsent(id: String)

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 rejectAlltill 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(id: String)

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)")

Syfte och leverantörshantering

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 rejectAlltill 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 rejectAlltill 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 rejectAlltill 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 rejectAlltill 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 rejectAlltill 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 rejectAlltill 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)")

acceptAll(completion: (Result ) -> Enhet)

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(syfte: List , updatePurpose: Boolean, slutförande: (Resultat ) -> Enhet)

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(leverantörer: List , slutförande: (Resultat ) -> Enhet)

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}"
	}
}

importCMPInfo(cmpString: String)

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(slutförande: (Resultat ) -> Enhet)

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(syfte: List , updateVendor: Boolean, komplettering: (Resultat ) -> Enhet)

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}"
	}
}

avvisaVendors(leverantörer: List , slutförande: (Resultat ) -> Enhet)

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()

Parametrar:

Ingen

Returnerar: Ingen

Exempelvis:

cmpManager.resetConsentManagementData()

CMPManagerDelegate-evenemang

didReceiveConsent(samtycke: String, jsonObject: [String: Alla])

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.

 

Tillbaka till toppen