Información
Contenido

ConsentManager GDPR / CCPA SDK para Android

EL ConsentManager SDK para aplicaciones de Android implementa y proporciona funcionalidad para informar al usuario sobre la protección de datos y solicitar y obtener el consentimiento del usuario. Permite a los desarrolladores de aplicaciones integrar fácilmente ConsentManager servicio en su aplicación.

Estándares soportados

EL ConsentManager GDPR / CCPA SDK para Android es compatible con los siguientes estándares de la industria:

  • IAB TCF v1
  • IAB TCF v2
  • Privacidad de EE. UU. de IAB v1
  • ConsentManager vendedores personalizados / propósitos
  • Modo de consentimiento adicional de Google (cadena de CA de Google)

Cómo funciona

  1. Integre el SDK en la aplicación y configure los ajustes del SDK
  2. Una vez que el SDK se integre en una aplicación, el SDK proporcionará funciones para el desarrollador de la aplicación con el fin de recuperar los datos de consentimiento
  3. Tan pronto como se inicie la aplicación, el SDK recuperará automáticamente la información del ConsentManager servidores para preparar el SDK para su uso.
  4. Se recomienda que, al iniciar la aplicación, la aplicación cree una instancia de clase CMPConsentTool. Una vez que se crea esto, el SDK mostrará automáticamente la pantalla de consentimiento si es necesario.
  5. Cuando la aplicación quiere procesar datos personales, debe "preguntar" al SDK si se dio el consentimiento para el propósito específico y el proveedor.

INSTALACIÓN

Repositorio en Bitbucket: https://bitbucket.org/consentmanager/android-consentmanager/src/master/

Gradle

Paso 1. Agregue el repositorio jitpack a su build.gradle raíz al final de los repositorios:

allprojects {  
  repositories {    
    ...    
    maven { url 'https://jitpack.io' }  
  }
}

Paso 2. Agregue la dependencia a sus aplicaciones build.gradle. (Para obtener siempre la última versión, use el símbolo + para obtener las actualizaciones más recientes. Por ejemplo, siempre puede obtener las versiones más recientes para actualizaciones menores a través de 1.x.+)

dependencies {
  implementation 'org.bitbucket.consentmanager:android-consentmanager:1.5.+'
}

Maven

Paso 1. Agrega el repositorio jitpack a tu build.gradle al final de los repositorios:

    <repositories>
        <repository>
            <id>jitpack.io</id>
            <url>https://jitpack.io</url>
        </repository>
    </repositories>

Paso 2. Agregue la dependencia a sus aplicaciones build.gradle. (Para obtener siempre la última versión en maven, puede usar diferentes métodos para rechazar el rango de versión. Puede buscarlos aquí )

    <dependency>
        <groupId>org.bitbucket.consentmanager</groupId>
        <artifactId>android-consentmanager</artifactId>
        <version>1.5.7</version>
    </dependency>

Usando la biblioteca

Permissions

Este SDK requiere los siguientes permisos, asegúrese de agregarlos a su AndroidManifest.xml:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

Iniciar herramienta de consentimiento

Con el inicio de la aplicación (generalmente su función viewDidAppear) debe crear una instancia de la clase CMPConsentTool. Esto obtendrá automáticamente los datos necesarios de nuestro servidor y determinará si la pantalla de consentimiento debe mostrarse o no. Si es así, el SDK mostrará automáticamente la pantalla de consentimiento en este punto, recopilará los datos y proporcionará los datos a la aplicación. Luego, la instancia se puede usar para obtener detalles de consentimiento del SDK para usarlo en la aplicación.

Para iniciar ConsentTool, vaya a su clase de destino y cree una instancia de CMPConsentTool como se muestra a continuación:

//...
import net.consentmanager.sdk.CMPConsentTool;
//...
public class MainActivity extends AppCompatActivity {
    private CMPConsentTool consentTool;
    //...
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      //..
      consentTool = CMPConsentTool.createInstance(this, 123456, "consentmanager.mgr.consensu.org", "MyFavouriteApp", "");
    }
//...
}

 

Para crear la instancia de CMPConsentTool necesita configurar la instancia. Deberá proporcionar el ID de CMP, el dominio del servidor, el nombre de una aplicación y un idioma. El ID de CMP y el dominio del servidor se pueden encontrar en su ConsentManager cuenta bajo Menú> Obtener código. El nombre de la aplicación se puede usar para distinguir diferentes aplicaciones en ConsentManager informes Para el idioma, puede usar una cadena vacía ("") para la detección automática o un código de idioma de 2 letras ("EN", "DE", "FR", etc.).

Los valores de configuración se pueden insertar de diferentes maneras:

a) Configuración de SDK a través de CMPConfig

Agregue las siguientes líneas a su código:

val config = CMPConfig.apply { 
            serverDomain = CMP_DOMAIN
            appName = CMP_APP_NAME
            language = LANG
            id = APP_ID
        }
val consentTool = CMPConsentTool.createInstance(this, config);
b) Configuración de SDK a través de createInstance()

Agregue la siguiente línea a su código:

consentTool = CMPConsentTool.createInstance(this, 1234567, "consentmanager.mgr.consensu.org", "MyFavouriteApp", "EN");

Usando el SDK

Para verificar si un proveedor o propósito tiene consentimiento, puede usar los dos métodos:

if(consentTool.hasPurposeConsent(this,"52",false))
{
    if(consentTool.hasVendorConsent(this,"s26", false))
    {
        //do something with data
    }
}

Ambos métodos hasPurposeConsent y hasVendorConsent requiere dos parámetros:

  • id: cadena del proveedor o ID de propósito. Tenga en cuenta que las ID de proveedor pueden tener diferentes formatos ("123", "s123" y "c123"), verifique nuevamente con Menú> Proveedores y Menú> Propósitos en tu ConsentManager .
  • isIABVendor / isIABPurpose: si el proveedor o el propósito es un proveedor / propósito que sigue el estándar IAB TCF, deberá establecer un verdadero, de lo contrario, un falso.

Recuerde: Todos los proveedores que no pertenecen al IAB tienen ID que comienzan con una "s" o "c" (por ejemplo, "s123"); Los proveedores que pertenecen a la IAB tienen ID que no comienzan con una "s" o "c".

Reabrir la pantalla de consentimiento

Para permitir que el usuario cambie las opciones, simplemente puede llamar openCmpConsentToolView():

consentTool.openCmpConsentToolView(this);

En algunos casos, una aplicación nativa puede contener vistas web para mostrar ciertas cosas como publicidad o contenido. Para transmitir la información de consentimiento del SDK a la vista web, utilice la función:

String consentData = CMPConsentTool.exportCMPData(this);

Esto exportará la información de consentimiento y todos los datos adicionales que necesita el CMP. Luego puede pasar esta información al CMP que está en su vista web agregándola a la URL que se llama en la vista web:

myWebView.loadURL("https://mywebsite.com/....#cmpimport=" + consentData);

Oyentes de eventos personalizados

Para agregar una lógica de proceso adicional, puede utilizar los detectores de eventos. Los siguientes detectores de eventos están disponibles:

Nombre

ocurre

 

OnOpenCallback

Oyente de evento cuando se abrió CMP

OnCMPCoseCallback

Oyente de evento cuando CMP está cerrado

OnCMPNotOpenedCallback

Oyente para eventos cuando no es necesario abrir CMP

OnErrorCallback

Listener for Event cuando hay un error en el proceso de gestión de consentimiento.

Consentimiento de importación/exportación

Para importar o exportar el consentimiento puede utilizar la función exportCMPData(Contexto contexto) y importCMPData(Contexto contexto, String cmpData). Mira el ejemplo a continuación: 

La cadena de consentimiento que necesita pasar debe estar codificada en base64.

 

Diagrama de secuencia del SDK de CMP

Cmp-Secuencia-Diagrama-(1).png

 


 

Descripción general de la API: 

 
hasConsent(): Booleano

Descripción: Comprueba si el usuario ya ha dado su consentimiento.

Valor de retorno: Devuelve verdadero si el usuario ha dado su consentimiento, falso en caso contrario.


getAllPurposes(contexto: Contexto): Cadena

Descripción: Devuelve todos los propósitos como una Cadena.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar los propósitos.

Regreso: Una cadena que contiene todos los propósitos.


getAllPurposeList(contexto: Contexto): Lista

Descripción: Devuelve todos los propósitos como una lista de cadenas.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar los propósitos.

Regreso: Una lista de cadenas, donde cada cadena representa un propósito.


getAgreedPurposes(contexto: Contexto): Cadena

Descripción: Devuelve los propósitos que el usuario ha aceptado como una Cadena.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que se recuperan los fines acordados.

Regreso: Una cadena que contiene los propósitos que el usuario ha aceptado.


getAgreedPurposeList(contexto: Contexto): Lista

Descripción: Devuelve una lista de propósitos que el usuario ha aceptado.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar la lista de propósitos acordados.

Regreso: una lista de valores de cadena que representan los propósitos que el usuario ha aceptado.


getDisabledPurposes(contexto: Contexto): Lista

Descripción: Devuelve una lista de propósitos que actualmente están deshabilitados.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar la lista de propósitos deshabilitados.

Regreso: una lista de valores de cadena que representan los propósitos que están deshabilitados actualmente.


getAllVendors(contexto: Contexto): Cadena

Descripción: Devuelve una cadena que contiene una lista de todos los proveedores disponibles.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar la lista de todos los proveedores.

Regreso: una cadena que contiene una lista de todos los proveedores disponibles.


getAllVendorsList(contexto: Contexto): Lista

Descripción Devuelve una lista de todos los proveedores disponibles.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar la lista de todos los proveedores.

Regreso: una lista de valores de cadena que representan a todos los proveedores disponibles.


getAgreedVendors(contexto: Contexto): Cadena

Descripción: Devuelve una cadena que contiene una lista de proveedores que el usuario ha aceptado.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar la lista de proveedores acordados.

Regreso: una cadena que contiene una lista de proveedores que el usuario ha aceptado.


getAgreedVendorList(contexto: Contexto): Lista

Descripción: Devuelve una lista de proveedores que el usuario ha aceptado.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar la lista de proveedores acordados.

Regreso: una lista de valores de cadena que representan a los proveedores que el usuario ha aceptado.


getDisabledVendors(contexto: Contexto): Lista

Descripción: Devuelve una lista de proveedores que actualmente están deshabilitados.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que recuperar la lista de proveedores deshabilitados.

Regreso: una lista de valores de cadena que representan a los proveedores que actualmente están deshabilitados.


enableVendorList(contexto: Contexto, proveedores: Lista )

Descripción: Habilita la lista dada de proveedores.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que habilitar los proveedores.
  • proveedores (tipo: Lista ): una lista de valores de cadena que representan a los proveedores que se habilitarán.

Regreso: Ninguno.


disabledVendorList(contexto: Contexto, proveedores: Lista )

Descripción: Deshabilita la lista dada de proveedores.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que deshabilitar los proveedores.
  • proveedores (tipo: Lista ): una lista de valores de cadena que representan a los proveedores que se deshabilitarán.

Regreso: Ninguno.


rechazarTodo(contexto: Contexto, onConsentReceivedCallback: OnConsentReceivedCallback)

Descripción Rechaza todo consentimiento para la aplicación.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que se rechaza el consentimiento.
  • onConsentReceivedCallback (tipo: OnConsentReceivedCallback): la función de devolución de llamada que se ejecuta después de que se rechaza el consentimiento.

Regreso Valor: Ninguno


acceptAll(contexto: Contexto, onConsentReceivedCallback: OnConsentReceivedCallback)

Descripción Acepta todo consentimiento para la aplicación.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que se acepta el consentimiento.
  • onConsentReceivedCallback (tipo: OnConsentReceivedCallback): la función de devolución de llamada que se ejecuta después de que se acepta el consentimiento.

Regreso Valor: Ninguno


getUSPrivacyString(contexto: Contexto): Cadena

Descripción Devuelve la cadena de privacidad de EE. UU.

parámetros:

  • contexto (tipo: Contexto): el contexto en el que se devuelve la cadena de privacidad de EE. UU.

Regreso Valor:

  • Una cadena que representa la cadena de privacidad de EE. UU.

hasVendorConsent(context: Contexto, id: Cadena, checkConsent: Boolean = true): Boolean

Descripción Comprueba si el usuario ha dado su consentimiento a un proveedor específico.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que se verifica el consentimiento del proveedor.
  • id (tipo: cadena): la identificación del proveedor.
  • checkConsent (tipo: booleano, opcional): especifica si se debe verificar el consentimiento. El valor predeterminado es verdadero.

Regreso Valor:

  • true si el usuario ha dado su consentimiento al vendedor, false en caso contrario.

hasPurposeConsent(context: Context, id: String, isIABPurpose: Boolean, checkConsent: Boolean = true): Boolean

Descripción Comprueba si el usuario ha dado su consentimiento para un propósito específico.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que se comprueba el consentimiento de propósito.
  • id (tipo: Cadena): El ID del propósito.
  • isIABPurpose (tipo: booleano): especifica si el propósito es un propósito de IAB.
  • checkConsent (tipo: booleano, opcional): especifica si se debe verificar el consentimiento. El valor predeterminado es verdadero.

Regreso Valor:

  • verdadero si el usuario ha dado su consentimiento para el propósito, falso en caso contrario.

getGoogleACString(contexto: Contexto): Cadena

Descripción Devuelve el ID de publicidad de Google.

parámetros:

  • contexto (tipo: contexto): el contexto en el que se devuelve el ID de publicidad de Google.

Regreso Valor:

  • Una cadena que representa el ID de publicidad de Google.

getLastConsentString(contexto: Contexto): Cadena

Descripción Devuelve la última cadena de consentimiento.

parámetros:

  • contexto (tipo: Contexto): el contexto en el que se devuelve la última cadena de consentimiento.

Regreso Valor:

  • Una cadena que representa la última cadena de consentimiento.

exportConsentString(): Cadena

Descripción Exporta la cadena de consentimiento.

parámetros: Ninguna

Regreso Valor:

  • Una cadena que representa la cadena de consentimiento.

getCalledLast (contexto: Contexto): ¿Fecha?

Descripción Devuelve la fecha en la que se solicitó por última vez el consentimiento.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que se devuelve la fecha de la última llamada.

Regreso Valor:

  • Una fecha que representa la fecha de la última llamada o nulo si no se encontró ninguna fecha.

llamadoEsteDía(contexto: Contexto): Booleano

Descripción Comprueba si el consentimiento se solicitó el mismo día.

parámetros:

  • contexto (tipo: Contexto): El contexto en el que se ejecuta la comprobación.

Regreso Valor:


Preferencias compartidas

El SDK establecerá los valores de preferencias compartidas para IAB TCF v1, IAB TCF v2, IAB USPrivacy y Google AC String. Estos valores se pueden leer utilizando el siguiente código:

Context mContext = getApplicationContext();

SharedPreferences mPreferences = PreferenceManager.getDefaultSharedPreferences(mContext);

SharedPreferences.OnSharedPreferenceChangeListener mListener;

mListener = new SharedPreferences.OnSharedPreferenceChangeListener() {

            public void onSharedPreferenceChanged(SharedPreferences preferences, String key) {
                        if (key.equals([Specific Consent Key])) {
                                   // Update Consent settings
                                   }
                        }
            };
mPreferences.registerOnSharedPreferenceChangeListener(mListener);

 

Se definen las siguientes claves:

IAB TCF v1  
IABConsent_CMPPresent Boolean: Se establece en verdadero si un CMP que implementa esta especificación está presente en la aplicación. Idealmente establecido por el editor lo antes posible, pero también puede ser configurado por el CMP alternativamente.
IABConsent_SubjectToGDPR String 1 - (sujeto a GDPR), 0 - (no sujeto a GDPR), Nulo - indeterminado (predeterminado antes de la inicialización). Se alinea con IAB OpenRTB GDPR Advisory. Decidió ser String, tener el estado no inicializado.
IABConsent_ConsentString String: Cadena de consentimiento
IABConsent_ParsedPurposeConsents String (de "0" y "1") donde el carácter en la posición N indica el estado de consentimiento para la ID de propósito N como se define en la Lista global de proveedores. Cadena de consentimiento otorgado para permitir una verificación simple. El primer personaje de la izquierda es el Propósito 1, ...
IABConsent_ParsedVendorConsents String (de "0" y "1") donde el carácter en la posición N indica el estado de consentimiento para la identificación del proveedor N como se define en la Lista global de proveedores. Cadena de consentimiento otorgado para permitir una verificación simple. El primer personaje de la izquierda es el Vendedor 1, ... 
IAB TCF v2  
IABTCF_CmpSdkID Number: El ID entero sin signo del SDK de CMP
IABTCF_CmpSdkVersion Number: El número de versión entero sin signo de CMP SDK
IABTCF_PolicyVersion Number: El entero sin signo que representa la versión del TCF a la que se adhieren estos consentimientos.
IABTCF_gdprApplies Number:

1 GDPR se aplica en el contexto actual

0 - GDPR hace no aplicar en el contexto actual

Desarmado - indeterminado (predeterminado antes de la inicialización)

IABTCF_PublisherCC String: Código de dos letras ISO 3166-1 alfa-2 - Defecto: AA (desconocido)
IABTCF_PurposeOneTreatment Number:

0 - no hay un tratamiento especial para el propósito uno

1 - propósito uno no revelado

Desestablecer predeterminado - 0

Los proveedores pueden usar este valor para determinar si se requiere el consentimiento para el propósito uno.

IABTCF_UseNonStandardStacks Number:

1 - CMP usó una pila no estándar

0 - CMP no usó una pila no estándar

IABTCF_TCString String: Cadena TC codificada completa
IABTCF_VendorConsents Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de consentimiento para la identificación del proveedor n + 1; false y true respectivamente. p.ej. '1' en el índice 0 es consentimiento true para la identificación del proveedor 1
IABTCF_VendorLegitimateInterests Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de interés legítimo para la identificación del proveedor n + 1; false y true respectivamente. p.ej. '1' en el índice 0 se establece un interés legítimo true para la identificación del proveedor 1
IABTCF_PurposeConsents Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de consentimiento para la identificación del propósito n + 1; false y true respectivamente. p.ej. '1' en el índice 0 es consentimiento true para fines de identificación 1
IABTCF_PurposeLegitimateInterests Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de interés legítimo para la identificación del propósito n + 1; false y true respectivamente. p.ej. '1' en el índice 0 se establece un interés legítimo true para fines de identificación 1
IABTCF_SpecialFeaturesOptIns Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de suscripción para ID de función especial n + 1; false y true respectivamente. p.ej. '1' en el índice 0 es opt-in true para ID de función especial 1
IABTCF_PublisherRestrictions{ID} String ['0','1', or '2']: El valor en la posición n - dónde nLa indexación comienza en 0 - indica el tipo de restricción del editor (0-2) para el proveedor n + 1; (consulte Tipos de restricciones de editor). p.ej. '2' en el índice 0 es restrictionType 2 para la identificación del proveedor 1. {ID} se refiere a la identificación del propósito.
IABTCF_PublisherConsent Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de consentimiento del propósito para la identificación del propósito n + 1 para el editor, ya que corresponden a los propósitos de la Lista global de proveedores; false y true respectivamente. p.ej. '1' en el índice 0 es consentimiento true para fines de identificación 1
IABTCF_PublisherLegitimateInterests Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de interés legítimo del propósito para la identificación del propósito n + 1 para el editor, ya que corresponden a los propósitos de la Lista global de proveedores; false y true respectivamente. p.ej. '1' en el índice 0 se establece un interés legítimo true para fines de identificación 1
IABTCF_PublisherCustomPurposesConsents Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de consentimiento del propósito para la ID de propósito personalizado del editor n + 1 para el editor; false y true respectivamente. p.ej. '1' en el índice 0 es consentimiento true para ID de propósito personalizado 1
IABTCF_PublisherCustomPurposesLegitimateInterests Binary String: Los '0' or '1' en la posición n - dónde nLa indexación comienza en 0 - indica el estado de interés legítimo de propósito para la identificación de propósito personalizado del editor n + 1 para el editor; false y true respectivamente. p.ej. '1' en el índice 0 se establece un interés legítimo true para ID de propósito personalizado 1
IAB USPrivacidad  
IABUSPrivacy_String String: Se alinea con el IAB OpenRTB CCPA Advisory. La cadena codifica todas las opciones e información.
Cadena AC de Google  
IABTCF_AddtlConsent

String: Se alinea con la especificación técnica del Modo de consentimiento adicional de Google. 

(Obsoleto) Bloqueo de contenido dinámico con marcador de posición webView

Esta función ha quedado obsoleta y se eliminará en el futuro. El motivo de la obsolescencia es que con la habilitación y deshabilitación de las API de propósito y proveedor, ya no es necesario crear un marcador de posición. Puede agregar su propia interfaz de usuario y su propia lógica comercial y activar y desactivar proveedores dinámicamente. En lugar de usar esta función, debe usar el enableVendorList() y deshabilitar lista de proveedores () funciones para administrar qué proveedores están habilitados o deshabilitados, y cree su propia interfaz de usuario para mostrar esta información al usuario.

El viewObject de marcador de posición se puede implementar para obtener la funcionalidad de bloqueo de contenido dinámico aquíPuede crear la vista con el siguiente método: 

CMPPlaceholder placeholderView = CMPConsentTool.createPlaceholder(getApplicationContext(),CMPPlaceholderParams
                        .ofVendor("${vendorId}"), new CMPPlaceholderEventListener() {
                        
                    @Override
                    public void vendorAccepted(WebView view) {
                    	//... Actions to trigger if Consent is accepted
                        // Like showing Youtube Video View
                    	}
                    });

Con el objeto Wrapper CMPPlaceholderParams también puede pasar parámetros opcionales como textos personalizados o una imagen de vista previa opcional. Las funciones del constructor se llaman setCustomplaceholder(String headline, String mainText, String checkboxText, String buttonText) y  setOptionalImageUrl(String imageUrl).

La lógica empresarial requerida, cuando desee mostrar la vista y cuando no necesite ser aplicada por el desarrollador. Puede pasar la condición y las acciones necesarias mediante las devoluciones de llamada de EvenListener del CMPPlaceholderEventlistener. Se debe implementar el siguiente evento requerido:

Necesario: vendorAccepted(CMPPlaceholderView view) { // Your logic }

Opcional: errorOccurred(String message) { // Error handling }

 

Descripción general de la API (versiones anteriores)

API

parámetros Retorno

Descripción

 

openCmpConsentToolView(

Contexto de contexto

)

contexto: El contexto de la aplicación vacío  Muestra una vista modal con la vista web de consentimiento. Si el Cumplimiento es aceptado o rechazado, se llamará a una función de cierre. Puede anular esta función de cierre con la suya propia. Por lo tanto, implemente OnCloseCallback y agréguelo como parámetro. Interfaz de usuario de @apiNote -> ejemplo: Abrir capa mediante acción de botón
       

openCmpConsentToolView(

contexto contexto,

Devolución de llamada OnCloseCallback

)

contexto: El contexto de la aplicación

 

llamar de vuelta: OnCloseCallback que debe llamarse cuando la vista web se cierra por acción

 

vacío Muestra una vista modal con la vista web de consentimiento. Si el Cumplimiento es aceptado o rechazado, se llamará a una función de cierre. Puede anular esta función de cierre con la suya propia. Por lo tanto, implemente OnCloseCallback y déselo a esta función. Este método no volverá a enviar una solicitud al servidor consentTool. Utilizará el último estado. Si solo desea volver a abrir la Vista de herramienta de consentimiento, si el servidor da un estado de respuesta == 1, use el método checkAndProceedConsentUpdate Interfaz de usuario @apiNote -> ejemplo: Abrir capa por acción de botón

setCloseCmpConsentToolViewListener(

Devolución de llamada OnCloseCallback

)

llamar de vuelta: OnCloseCallback que debe llamarse cuando la vista web se cierra por acción vacío Establece un oyente. Si el Cumplimiento es aceptado o rechazado, se llamará a esta función. Puede anular esta función de cierre con la suya propia. Por lo tanto, implemente OnCloseCallback y agréguelo como parámetro.
       
       

setCustomCmpConsentToolViewAction(

CustomOpenActionCallback customAction

)

acción personalizada: La acción personalizada que se debe llamar, además de mostrar la herramienta de consentimiento vacío Establece una acción personalizada para una respuesta del servidor.

setErrorDialogCmpConsentToolViewListener(

Devolución de llamada OnErrorDialogCallback

)

llamar de vuelta: El OnOpenCallback, que debe llamarse, cuando se abrirá la Vista. vacío Establece un oyente. Si se abre la Vista de cumplimiento, se llamará a esta función. Puede anular esta función abierta con la suya propia. Por lo tanto, implemente OnOpenCallback y agréguelo como parámetro.

setNetworkErrorExceptionListener(

Devolución de llamada OnNetworkExceptionCallback

)

llamar de vuelta: OnErrorNetworkCallback que debe llamarse. vacío Establece un agente de escucha al que se llama si se produce un error de red.

setOnCMPNotOpenedCallback(

OnCMPNotOpenedCallback devolución de llamada

)

llamar de vuelta: La acción cmpNotOpenedCallback que será llamada vacío Establece una acción cuando el Consentlayer no se va a abrir

setOpenCmpConsentToolViewListener(

contexto contexto,

Botón gdprBotón

)

contexto: Entonces Contexto de la aplicación

botón gdpr: El botón, el openCmpConsentToolViewListener debe agregarse a

vacío Establece un oyente en el botón dado. Si se hace clic en el botón, se mostrará una vista modal con la vista web de consentimiento. Si el Cumplimiento es aceptado o rechazado, se llamará a una función de cierre. Puede anular esta función de cierre con la suya propia. Por lo tanto, implemente OnCloseCallback y agréguelo como otro parámetro. Si el parámetro no está configurado, pero se usó setCloseCmpConsentToolViewListener para agregar un oyente al evento de cierre, se usará este.

setOpenCmpConsentToolViewListener(

contexto contexto,

botón gdpr,

Devolución de llamada OnCloseCallback

)

contexto: El contexto de la aplicación

botón gdpr: El botón, el openCmpConsentToolViewListener debe agregarse a

 

llamar de vuelta: OnCloseCallback que debe llamarse cuando la vista web se cierra por acción

vacío Establece un oyente en el botón dado. Si se hace clic en el botón, se mostrará una vista modal con la vista web de consentimiento. Si el Cumplimiento es aceptado o rechazado, se llamará a una función de cierre. Puede anular esta función de cierre con la suya propia. Por lo tanto, implemente OnCloseCallback y agréguelo como último parámetro.

setOpenCmpConsentToolViewListener(

Devolución de llamada OnCloseCallback

)

llamar de vuelta: OnCloseCallback que debe llamarse cuando la vista web se cierra por acción

vacío Establece un oyente. Si se abre la Vista de cumplimiento, se llamará a esta función. Puede anular esta función abierta con la suya propia. Por lo tanto, implemente OnOpenCallback y agréguelo como parámetro.

setOpenPlaceHolderViewListener(

contexto contexto,

botón botón,

vendedor de cuerdas

)

contexto: El contexto de la aplicación

.: Un botón de acción para crear la vista de marcador de posición

vendedor: El proveedor que está asignado al marcador de posición

vacío Abre la vista de marcador de posición al hacer clic en el botón para el proveedor asignado 
 

 

   

llamadoEsteDía(

contexto contexto)

contexto: El contexto de la aplicación

booleano: si el servidor ya fue contactado este día Devuelve si el servidor ya fue contactado ese día.

clearAllValues(contexto contexto)

contexto: El contexto de la aplicación

vacío Restablece los datos de consentimiento

crear marcador de posición (

contexto contexto, 

CMPPlaceholderParams cmpPlaceholderParams, 

CmpPlaceholderEventListener cmpPlaceholderEventListener)

contexto: El contexto de la aplicación

cmpPlaceholderParams: 

asignar parámetros de marcador de posición requeridos

cmpPlaceholderEventListener: Interfaz EventListener para funciones de proceso personalizadas

CmpMarcador de posición: UIView del marcador de posición Crea una vista de marcador de posición para el bloqueo de contenido dinámico

exportCMPData(Contexto contexto)

contexto: El contexto de la aplicación

Cordón: La cadena de consentimiento Una función de exportación a la que se puede llamar para exportar la cadena de consentimiento completa generada por ConsentWebView y guardada en las Preferencias compartidas de este dispositivo.

getCalledLast (contexto contextual)

contexto: El contexto de la aplicación

Fecha: fecha en que se llamó al servidor por última vez Proporciona información sobre la última fecha en que se contactó con el servidor.

getConfig()

 

CMPConfig:

Objeto CMPConfig

Devuelve el CMPConfig que está configurado actualmente

getGoogleACString()

contexto: El contexto de la aplicación

Cordón: cadena de proveedores de privacidad de EE. UU. que se estableció a través de consentmanager

Devuelve la cadena de privacidad de EE. UU., establecida por consentmanager

obtener Instancia()

 

CMPConsentTool:

El instante singleton inicializado del consentmanager

Devuelve el CMPConsentTool. Si no ha inicializado el CMPConsentTool antes, se lanzará la excepción CMPConsentToolInitialisation Exception.

getInstanceUnsafe()

 

CMPConsentTool:

el instante singleton inicializado del consent Manager, o nulo.

Devuelve el CMPConsentTool, o nulo si no se inicializó. Este método no es seguro porque puede dar lugar a excepciones de puntero nulo, pero si está seguro de que ConsentTool se inicializó antes, puede utilizar este método sin necesidad de detectar el error. Recomendamos guardar el Objeto devuelto desde el Método createInstant, para usar los Métodos del consentManager.

getLastConsentString(

contexto contexto)

contexto: El contexto de la aplicación

Cordón

La última cadena de consentimiento establecida

Devuelve el último Consentimiento dado, presentado en base64 por consentManager

getPurposes (contexto contextual)

contexto: El contexto de la aplicación

Cordón: La Cadena de propósitos que se fijó a través de consentmanager

Devuelve la cadena de propósitos establecida por consentmanager

getUSPrivacyString (contexto contextual)

contexto: El contexto de la aplicación

Cordón: La cadena de proveedores de privacidad de EE. UU. que se estableció a través de consentmanager

Devuelve la cadena de privacidad de EE. UU., establecida por consentmanager

getVendorsString (contexto contextual)

contexto: El contexto de la aplicación

Cordón: La cadena de proveedores que se estableció a través de consentmanager

Devuelve la Cadena de proveedor, que fue establecida por consentmanager

hasPurposeConsent(contexto contexto,

ID de cadena,

booleano isIABPurpose)

contexto: el contexto de la aplicación

id: El id del propósito

esIABPropósito: Si el propósito está establecido por el estándar IAB (V1/V2)

booleano

Si la finalidad tiene el consentimiento para establecer cookies

Devoluciones, si el propósito (id) tiene los derechos para establecer cookies.

Atención: La identificación del propósito es la misma que se muestra en la lista de propósitos y puede tener un prefijo como C

tieneConsentimientoDeVendedor(

contexto contexto,

ID de cadena,

booleano isIABVendor)

contexto: El contexto de la aplicación

id: La identificación del vendedor

esIABVendor: si el proveedor está establecido por el estándar IAB (V1/V2)

booleano: Si el Vendedor tiene el Consentimiento para establecer cookies.

Devoluciones, si el Proveedor (id) tiene los derechos para establecer cookies

 

Atención: La identificación del proveedor es la misma que se muestra en la lista de proveedores y puede tener un prefijo como C, S

importarCMPData(

contexto contexto, 

Cadena cmpData

)

contexto: El contexto de la aplicación

cmpData: la cadena que se establecerá. La cadena de consentimiento debe pasarse como base64 codificada 

booleano

Si la importación se realizó correctamente o si se producen errores en la cadena

Un método de importación al que se puede llamar para importar la cadena de consentimiento completa generada por ConsentWebView en las Preferencias compartidas de este dispositivo.

necesidadesAceptación(Contexto contexto)

contexto: El contexto de la aplicación

booleano: si el usuario necesita dar su consentimiento

Devuelve si el usuario necesita dar un consentimiento, porque no lo hizo en el pasado, o porque el servidor de consentimiento devolvió, que se requiere un nuevo consentimiento

necesita Actualización del servidor (contexto contextual)

contexto: El contexto de la aplicación

booleano: Si el consentmanager necesita ser actualizado

Si los CMPSettings necesitan ser actualizados desde el servidor, porque no lo estaban en este día.

 

 

 

 

 

 

Volver