[Android] 2. Documentación de la API
aceptar todo
Acepta la capa de consentimiento y se comporta de la misma manera cuando el usuario acepta el consentimiento. Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
onConsentReceivedCallback |
¿Con consentimiento recibido devolución de llamada? | Devolución de llamada para manejar el evento de consentimiento recibido. |
Ida y vuelta
Sin valor de retorno.
Ejemplo
func acceptAll(onFinish: @escaping () -> Void) {
cmpManager?.acceptAll(onFinish: onFinish)
}
check
Comprueba si se requiere el consentimiento del usuario y, opcionalmente, devuelve resultados almacenados en caché. Este método consume una vista de página si el parámetro isCached() es VERDADERO y el consentimiento almacenado en caché ESTÁ vencido, una vista de página si el parámetro isCached() es FALSO y ninguna vista de página si el consentimiento almacenado en caché no ha vencido. El consentimiento almacenado en caché vence y se elimina cada 24 horas.
parámetros
Nombre | Tipo | Descripción |
onCheckIsConsentRequiredCallback |
OnCheckIsConsentRequired | divertido esConsentRequired(isConsentRequired: booleano) devolución de llamada para determinar si se requiere un consentimiento o no |
isCached |
Booleano = falso | Si es verdadero, el resultado se almacena en caché durante un día. |
Ida y vuelta
Ninguna.
Ejemplo
cmpManager.acceptAll {
coroutineScope.launch {
snackbarHostState.showSnackbar(
message = "All consents accepted",
duration = SnackbarDuration.Short
)
consentStatus.value = showConsentStatus(cmpManager)
}
}
comprobar y abrir la capa de consentimiento
Comprueba si se requiere el consentimiento del usuario y, en caso afirmativo, abre la interfaz de usuario de la capa de consentimiento. Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
context |
Contexto | Contexto de la aplicación |
appInterface |
CmpLayerAppEventListenerInterface? = nulo |
Ida y vuelta
Sin valor de retorno
Ejemplo
context.getActivity()?.let { activity ->
cmpManager.checkAndOpenConsentLayer(activity)
}
llamado este día
Comprueba si la capa de consentimiento se solicitó hoy. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
VERDADERO si el consentimiento del usuario ya fue solicitado hoy.
FALSO en caso contrario.
Ejemplo
fun consentRequestedTodayAction() {
val calledToday = cmpManager?.calledThisDay()
if (calledToday != null) {
println("Consent requested today: $calledToday")
} else {
println("Failed to retrieve consent request status for today.")
}
}
deshabilitarPurposeList
Desactiva una lista de propósitos y actualiza el consentimiento otorgado. Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
purposes |
Lista | Lista de identificadores de propósitos para deshabilitar |
updateVendor |
Boolean | marcar si es verdadero también deshabilitar los proveedores correspondientes |
onConsentReceivedCallback |
¿Con consentimiento recibido devolución de llamada? |
Ida y vuelta
Sin valor de retorno
Ejemplo
fun onFinish() {
println("Notification: New consent received")
}
val purposes = listOf("1", "2")
// Option with callback
cmpManager?.disablePurposeList(purposes, ::onFinish)
// Option without callback
cmpManager?.disablePurposeList(purposes)
desactivar la lista de proveedores
Desactiva una lista de proveedores y actualiza el consentimiento otorgado. Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
vendors |
Lista | Lista de ID de proveedores para habilitar. |
onConsentReceivedCallback |
¿Con consentimiento recibido devolución de llamada? | Devolución de llamada para manejar el evento de consentimiento recibido. Se llamará cuando se reciba y procese el consentimiento. |
Ida y vuelta
Sin valor de retorno.
Ejemplo
fun onFinish() {
println("Notification: New consent received")
}
val vendors = listOf("1", "2")
// Option with callback
cmpManager?.disableVendorList(vendors, ::onFinish)
// Option without callback
cmpManager?.disableVendorList(vendors)
habilitarLista de proveedores
Habilita una lista de propósitos y actualiza el consentimiento otorgado. Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
vendors |
Lista | Lista de ID de propósito para habilitar. |
onConsentReceivedCallback |
función (opcional) | Devolución de llamada para manejar el evento de consentimiento recibido. Se llamará cuando se reciba y procese el consentimiento. |
Ida y vuelta
Sin valor de retorno.
Ejemplo
fun onFinish() {
println("Notification: New consent received")
}
val vendors = listOf("1", "2")
// Option with callback
cmpManager?.enableVendorList(vendors, ::onFinish)
// Option without callback
cmpManager?.enableVendorList(vendors)
enablePurposeList
Habilita una lista de proveedores y actualiza el consentimiento otorgado. Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
purposes |
Lista | Lista de ID de propósito para habilitar. |
updateVendor |
Boolean | marcar si es verdadero también habilitar los proveedores correspondientes |
onConsentReceivedCallback |
Función (opcional) |
Ida y vuelta
Sin valor de retorno.
Ejemplo
fun onFinish() {
println("Notification: New consent received")
}
val purposes = listOf("1", "2")
// Option with callback
cmpManager?.enablePurposeList(purposes, ::onFinish)
// Option without callback
cmpManager?.enablePurposeList(purposes)
exportarCmpString
Exporta la cadena CMP actual que representa las preferencias de consentimiento del usuario. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
La cadena de consentimiento de CMP.
Ejemplo
fun exportConsentStringAction() {
val exportString = cmpManager?.exportCmpString()
println(exportString ?: "No string to export.")
}
obtenertodoslospropósitos
Devuelve los identificadores de todos los propósitos. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena separada por comas que contiene ID para todos los fines.
Ejemplo
fun getAllPurposesAction() {
val allPurposes = cmpManager?.getAllPurposes()
if (allPurposes != null) {
println("All purposes: $allPurposes")
// Additional actions for getAllPurposes function can be added here
} else {
println("Failed to retrieve all purposes.")
}
}
obtener lista multipropósito
Devuelve una lista de todos los identificadores de propósito para un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Lista
Ejemplo
fun getAllPurposeListAction() {
// Action for getAllPurposeList function
val allPurposes = cmpManager?.getAllPurposesList()
if (allPurposes != null) {
println("All purposes list: ${allPurposes.joinToString(", ")}")
} else {
println("Failed to retrieve all purposes list.")
}
}
obtener todos los proveedores
Devuelve los identificadores de todos los proveedores de un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena separada por comas que contiene todos los ID de proveedores.
Ejemplo
fun getAllVendorsAction() {
// Action for getAllVendors function
val allVendors = cmpManager?.getAllVendors()
if (allVendors != null) {
println("Printing all Vendors: $allVendors")
} else {
println("Failed to retrieve all vendors.")
}
}
obtener lista de todos los proveedores
Devuelve una lista de todos los identificadores de proveedores para un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una lista que contiene todos los ID de proveedores.
Ejemplo
fun getAllVendorsListAction() {
val allVendors = cmpManager?.getAllVendorsList()
if (allVendors != null) {
println("All vendors list: ${allVendors.joinToString(", ")}")
} else {
println("Failed to retrieve all vendors list.")
}
}
obtener cadena de consentimiento
Devuelve una cadena con el último consentimiento otorgado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena con el último consentimiento reconocido por el usuario.
Ejemplo
fun getAllVendorsListAction() {
val allVendors = cmpManager?.getAllVendorsList()
if (allVendors != null) {
println("All vendors list: ${allVendors.joinToString(", ")}")
} else {
println("Failed to retrieve all vendors list.")
}
}
getDisabledPurposes
Devuelve todos los identificadores de propósitos deshabilitados para un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena separada por comas que contiene los ID de todos los propósitos deshabilitados.
Ejemplo
fun getDisabledPurposesAction() {
val disabledPurposes = cmpManager?.getDisabledPurposes()
if (disabledPurposes != null) {
println("Disabled purposes: $disabledPurposes")
} else {
println("Failed to retrieve disabled purposes.")
}
}
getDisabledVendors
Devuelve todos los identificadores de proveedores deshabilitados para un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena separada por comas que contiene los ID de todos los proveedores deshabilitados.
Ejemplo
fun getDisabledVendorsAction() {
val disabledVendors = cmpManager?.getDisabledVendors()
if (disabledVendors != null) {
println("Disabled vendors: $disabledVendors")
} else {
println("Failed to retrieve disabled vendors.")
}
}
getEnabledPurposes
Devuelve todos los identificadores de proveedores habilitados para un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena separada por comas que contiene los ID de todos los proveedores habilitados.
Ejemplo
fun getEnabledPurposesAction() {
val enabledPurposes = cmpManager?.getEnabledPurposes()
if (enabledPurposes != null) {
println("Disabled purposes: $enabledPurposes")
} else {
println("Failed to retrieve enabled purposes.")
}
}
getEnabledPurposeList
Devuelve una lista con todos los identificadores de propósitos habilitados para un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una lista que contiene los ID de todos los propósitos habilitados.
Ejemplo
fun getEnabledPurposesAction() {
val enabledPurposes = cmpManager?.getEnabledPurposes()
if (enabledPurposes != null) {
println("Enabled purposes: ${enabledPurposes.joinToString(", ")}")
} else {
println("Failed to retrieve enabled purposes list.")
}
}
getEnabledVendors
Devuelve todos los identificadores de proveedores habilitados para un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena separada por comas que contiene los ID de todos los proveedores habilitados.
Ejemplo
fun getEnabledVendorsAction() {
val enabledVendors = cmpManager?.getEnabledVendors()
if (enabledVendors != null) {
println("Enabled vendors: $enabledVendors")
} else {
println("Failed to retrieve enabled vendors.")
}
}
getEnabledVendorList
Devuelve una lista con todos los identificadores de proveedores habilitados para un CMP determinado. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una lista que contiene todos los ID de proveedores habilitados.
Ejemplo
fun getEnabledVendorsAction() {
val enabledVendors = cmpManager?.getEnabledVendors()
if (enabledVendors != null) {
println("Enabled vendors: ${enabledVendors.joinToString(", ")}")
} else {
println("Failed to retrieve enabled vendors.")
}
}
obtenerGoogleACString
Recupera la cadena de ID de consentimiento adicional de Google (`addtlConsent`) que fue establecida por el consent manager.
Para más información, consulte el Especificación técnica del consentimiento adicional de Google.
Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una lista que contiene todos los ID de proveedores habilitados.
Ejemplo
fun getGoogleConsentStringAction() {
val googleACString = cmpManager?.getGoogleACString()
if (googleACString != null) {
println("Google Additional Consent String: $googleACString")
} else {
println("Failed to retrieve Google Additional Consent String.")
}
}
getUSPrivacyString
Recupera la cadena de privacidad de EE. UU. Esta cadena de privacidad de EE. UU. es una cookie que almacena información sobre las divulgaciones realizadas y las opciones seleccionadas por el visitante del sitio web con respecto a sus derechos como consumidor. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena con los datos de privacidad de EE. UU. establecidos por consentmanager.
Ejemplo
fun getUSPrivacyStringAction() {
val usPrivacyString = cmpManager?.getUSPrivacyString()
if (usPrivacyString != null) {
println("US Privacy string contents: $usPrivacyString")
} else {
println("Failed to retrieve US Privacy string.")
}
}
tiene consentimiento
Comprueba si el usuario ya ha dado su consentimiento. La capa de consentimiento puede tener la opción de simplemente cerrar la capa. En ese caso, el usuario no ha dado su consentimiento. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
Una cadena con los datos de privacidad de EE. UU. establecidos por consentmanager.
Ejemplo
fun getHasConsentAction() {
val hasConsent = cmpManager?.hasConsent()
if (hasConsent != null) {
val consentStatus = if (hasConsent) "Yes" else "No"
println("Consent provided by the user? $consentStatus")
} else {
println("Failed to retrieve user consent.")
}
}
hasPurpose (a partir de la versión 2.5.1)
hasPurposeConsent (obsoleto)
Comprueba si el ID de propósito está habilitado según el consentimiento del usuario. Este método no consume páginas vistas.
parámetros
Nombre | Tipo | Descripción |
purposeId |
Cordón | identificación de propósito |
defaultReturn |
Boolean | Valor que devuelve por defecto el método, en caso de que aún no exista consentimiento. Vea la advertencia a continuación. |
Ida y vuelta
VERDADERO si el usuario ha dado el consentimiento para el propósito especificado.
FALSO en caso contrario.
Tenga en cuenta que si, por cualquier motivo relacionado con una conexión a Internet deficiente o nula en el dispositivo o en el caso de ausencia de un consentimiento, el valor que se estableció a través de defaultReturn
Se devolverá el parámetro.
El sistema defaultReturn
parámetro no existe en versiones anteriores a 2.5.1.
Ejemplo
fun getHasPurposeConsentAction() {
val purposeId = "purposeID" // Replace with actual purpose ID
val hasPurposeConsent = cmpManager?.hasPurpose(purposeId, false)
if (hasPurposeConsent != null) {
val consentStatus = if (hasPurposeConsent) "Yes" else "No"
println("Purpose has consent provided by the user? $consentStatus")
} else {
println("Failed to retrieve user purpose consent.")
}
}
hasVendor (a partir de la versión 2.5.1)
hasVendorConsent (obsoleto)
Comprueba si el ID del proveedor está habilitado según el consentimiento del usuario. Este método no consume páginas vistas.
parámetros
Nombre | Tipo | Descripción |
vendorId |
Cordón | identificación del proveedor |
defaultReturn |
Boolean | Valor que devuelve por defecto el método, en caso de que aún no exista consentimiento. |
Ida y vuelta
VERDADERO si el usuario ha dado su consentimiento al proveedor especificado.
FALSO en caso contrario.
Tenga en cuenta que si, por cualquier motivo relacionado con una conexión a Internet deficiente o nula en el dispositivo, no se pudo recuperar el consentimiento para el propósito, el valor que se estableció a través de defaultReturn
Se devolverá el parámetro.
El sistema defaultReturn
parámetro no existe en versiones anteriores a 2.5.1.
Ejemplo
fun getHasVendorConsentAction() {
val vendorId = "vendorID" // Replace with actual vendor ID
val hasVendorConsent = cmpManager?.hasVendor(vendorId, false)
if (hasVendorConsent != null) {
val consentStatus = if (hasVendorConsent) "Yes" else "No"
println("Vendor has consent provided by the user? $consentStatus")
} else {
println("Failed to retrieve user vendor consent.")
}
}
importarCmpString
Importa una cadena CMP que representa las preferencias de consentimiento del usuario. La cadena debe informarse TAL CUAL, cuando se recupera a través del método exportCmpString()Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
cadena de consentimiento | Cordón | Cadena que representa el consentimiento |
finalizaciónHandler | función (opcional) | Controlador de finalización de devolución de llamada al método. |
Ida y vuelta
Ninguna.
Ejemplo
val cmpString = "YourConsentStringHere"
typealias CmpImportCompletionHandler = (Error?) -> Unit
// Define the completion handler function
val completionHandler: CmpImportCompletionHandler = { error ->
if (error != null) {
println("Failed to import CMP string: ${error.message}")
} else {
println("CMP string imported successfully")
}
}
cmpManager?.importCmpString(cmpString, completion = completionHandler)
inicializar
La función de inicialización inicializará la capa de consentimiento y verificará automáticamente si el usuario necesita un consentimiento o no. Esta función abrirá la capa de consentimiento e interactuará con la API de transparencia de seguimiento de Apple para solicitar el consentimiento del usuario. Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
context |
Contexto | Contexto de la aplicación |
cmpConfig |
cmpconfig | El objeto CmpConfig se pasa con la información relativa a appId, Dominio, appName e idioma (opcional) |
Ida y vuelta
El objeto CMPManager.
Ejemplo
private fun initializeCmpManager() {
CmpConfig.apply {
id = cmpId
domain = CMP_DOMAIN
appName = cmpAppName
language = cmpLanguage
domainWhitelist = cmpDomainWhitelist
timeout = 2000
isDebugMode = true
}
CmpLog.setLogLevel(Log.VERBOSE)
cmpManager = CmpManager.createInstance(this, CmpConfig)
}
openConsentLayer
Abre a la fuerza la vista web de la capa de consentimiento de CMP. Este método consume una vista de página.
parámetros
Nombre | Tipo | Descripción |
context |
Contexto | Contexto de la aplicación. |
Ida y vuelta
Sin valor de retorno.
Ejemplo
ActionButtonsRow("Open", "Check", "Open?") { action ->
when (action) {
"Open" -> context.getActivity()?.let {
cmpManager.openConsentLayer(it.applicationContext)
}
.
.
.
}
necesidadesAceptación
Comprueba si el usuario actual de la aplicación debe dar su consentimiento. Este método no consume páginas vistas.
parámetros
Ninguna. |
Ida y vuelta
TRUE si el usuario necesita dar su consentimiento.
FALSO en caso contrario.
fun showConsentStatus(cmpManager: CmpManager?): String {
return buildString {
append("Cmp ID: ${CmpConfig.id}\n")
append("Need Acceptance: ${cmpManager?.needsAcceptance()}\n") // <=========
append("ConsentString: ${cmpManager?.getConsentString()}\n")
append("Has Consent: ${cmpManager?.hasConsent()}\n")
}
}
rechazar todo
Rechaza la capa de consentimiento y se comporta de la misma manera cuando el usuario no acepta el consentimiento. Este método consume una página vista.
parámetros
Nombre | Tipo | Descripción |
onFinish |
función | Opcional. Devolución de llamada para manejar el evento de consentimiento recibido. se llamará cuando se reciba y procese el consentimiento. |
Ida y vuelta
Sin valor de retorno.
Ejemplo
// Define the onFinish function
fun onFinish() {
println("Notification: New consent has been received with a Reject All response.")
}
cmpManager?.rejectAll(::onFinish)
establecer devoluciones de llamada
Configura las devoluciones de llamada disponibles.
parámetros
Nombre | Tipo | Descripción |
openListener |
Al abrir devolución de llamada |
La devolución de llamada que se invocará cuando se abra la capa de consentimiento. |
closeListener |
Devolución de llamada al cerrar |
La devolución de llamada que se invocará cuando se cierre la capa de consentimiento. |
cmpNotOpenedCallback |
OnCMPNotOpenedDevolución de llamada |
La devolución de llamada que se invocará cuando no se pueda abrir la capa de consentimiento. |
onErrorCallback |
Devolución de llamada en error |
La devolución de llamada que se invocará cuando se produzca un error. |
onButtonClickedCallback |
En botón hecho clic en devolución de llamada |
La devolución de llamada que se invocará para obtener información sobre qué botón se presionó para cerrar la capa de consentimiento. |
Ida y vuelta
Sin valor de retorno
Ejemplo
val existingInstance = instance?.get()
existingInstance.setCallbacks(
openListener = openListener,
closeListener = closeListener,
cmpNotOpenedCallback = cmpNotOpenedCallback,
onErrorCallback = errorCallback,
onButtonClickedCallback = cmpButtonClickedCallback
)
conGoogleAnalyticsCallback
Configure la devolución de llamada para recuperar los valores del modo de consentimiento de Google.
parámetros
Nombre | Tipo | Descripción |
analyticsListener |
CmpGoogleAnalyticsInterfaz | La implementación de la interfaz para recibir actualizaciones sobre el modo de consentimiento de Google Analytics. |
Ida y vuelta
La instancia actual de CmpManagerInterface para el encadenamiento.
Ejemplo
private fun initializeCmpManager() {
cmpManager = CmpManager.createInstance(this, CmpConfig).apply {
withOpenListener(this@ConsentActivity)
withCloseListener(this@ConsentActivity)
withNotOpenedCallback(this@ConsentActivity)
withErrorCallback(this@ConsentActivity)
withButtonClickedCallback(this@ConsentActivity)
withOnClickLinkCallback(this@ConsentActivity)
withGoogleAnalyticsCallback(this@ConsentActivity) // <=============
initialize(this@ConsentActivity)
}
}