Información
Contenido

[Android] Socios de atribución de aplicaciones de terceros (AAP)

Descripción general

Para nuestros clientes que integran nuestro SDK de CMP con uno de los siguientes SDK de terceros, hemos elaborado este documento, donde encontrarán guías individuales que muestran cómo los consentimientos recopilados mediante nuestro SDK de CMP se transfieren a estos SDK. Nuestro CMP es totalmente compatible con TCF v3 y recopila datos de consentimiento de DMA y los almacena en... SharedPreferencesAlgunos de los SDK a continuación pueden obtener estos datos automáticamente, mientras que otros requieren código. Consulte a continuación los casos de uso individuales.  

Siga estrictamente el orden de llamadas de los diferentes SDK. Nuestro SDK de CMP debe recopilar el consentimiento de los usuarios antes de invocar cualquier acción en los SDK de terceros. abajo.

En algunos SDK de proveedores como AppsFlyer, AdJust y Branch, necesitarás (a) invocar nuestro updateThirdPartyConsent() Método que transferirá automáticamente los consentimientos recopilados a estos SDK mediante introspección/reflexión, o (b) usará sus propios métodos y propiedades para hacerlo manualmente. Si utiliza nuestro SDK CMP para gestionar automáticamente la transferencia de los datos de consentimiento, aquí tiene un ejemplo de implementación: 

import net.consentmanager.cm_sdk_android_v3.CMPManager
import net.consentmanager.cm_sdk_android_v3.CMPManagerDelegate
import net.consentmanager.cm_sdk_android_v3.ConsentLayerUIConfig
import net.consentmanager.cm_sdk_android_v3.UrlConfig

public class AppsflyerBasicApp extends Application {
    @Override
    public void onCreate() {
      	super.onCreate()

		// Initialize your third-party SDK. Replace the code below by your respective third-party init code 
        // according to the instructions along this document
        String yourClientToken = "YOUR-CLIENT-TOKEN"
        YourThirdPartySdk yourThirdPartySdk = YourThirdPartySdk.getInstance()
        yourThirdPartySdk.init(yourClientToken)

		// Initializing our CMP SDK
		val urlConfig = UrlConfig(
            id = "YOUR_CODE_ID_HERE",
            domain = "delivery.consentmanager.net",
            language = "EN",
            appName = "CMDemoAppKotlin"
        )

        cmpManager = CMPManager.getInstance(
            context = this,
            urlConfig = urlConfig,
            webViewConfig = webViewConfig,
            delegate = this
        )

        cmpManager.setActivity(this)

		// Here our CMP SDK will automatically display the consent layer if there is no consent
        // or the consent is expired. The didReceiveConsent() callback below will be triggered
        // once user consent is collected, which happens right after the users accepts/rejects
        // and all IAB TCF data is persisted to the SharedPreferences area
		checkAndOpen()
      
    }
  
      override fun didReceiveConsent(consent: String, jsonObject: Map<String, Any>) {
        Log.d("CMP DemoApp", "Consent Layer successfully received consent message.")
        // Here we'll automatically handle the passing of the consent from our
        // CMP SDK to the 3P SDK
        cmpManager.updateThirdPartyConsent()
    }
}	

Para obtener más información, consulte las instrucciones de terceros correspondientes a continuación.

AppsFlyer

Este SDK busca la cadena TCF almacenada dentro del SharedPreferences Área del dispositivo, que permite el flujo automático de los consentimientos recopilados en el dispositivo mediante nuestro SDK CMP a los eventos de AppsFlyer. Para transferir los datos de consentimiento a AppsFlyer, siga las instrucciones a continuación:

  1. Inicializar el SDK de AppsFlyer  y habilitar la recopilación de datos TCFEn el código presentado en la sección Descripción general de este documento, reemplace la parte de inicialización de terceros por:
            AppsFlyerLib.getInstance().init(<YOUR_DEV_KEY>, null, this);
    		AppsFlyerLib.enableTCFDataCollection(true);
    1. Inicializar nuestro SDK de CMP
    2. Utilice nuestro SDK CMP para decidir automáticamente si necesita el cuadro de diálogo de consentimiento en la sesión actual.
    3. Si es necesario, se mostrará un cuadro de diálogo de consentimiento para capturar las opciones de consentimiento del usuario, ya sea aceptar todo, rechazar todo o personalizar las opciones.
    4. Obtener confirmación del CMP de que el usuario ha tomado su decisión de consentimiento y los datos están disponibles en SharedPreferences. Hay diferentes maneras de hacer esto con nuestro SDK de CMP. En el ejemplo de la descripción general, usamos didReceiveConsent() devolución de llamada para lograr esto. 
    5. El último paso se puede realizar de dos maneras: (a) puede seguir nuestro fragmento de código desde la descripción general o (b) puede reemplazarlo por el de AppFlyer. start() método. En este último caso, reemplace la línea dentro de nuestro didReceiveMessage devolución de llamada mediante la línea siguiente: 
            AppsFlyerLib.getInstance().start(this);

    Ajustar

    Este SDK no recupera los datos de consentimiento almacenados dentro del SharedPreferences Área del dispositivo, por lo que tiene dos maneras de lograr esto: (a) automática, que será gestionada completamente por nuestro SDK de CMP; y (b) manual, donde utilizará las funciones de ambos SDK para lograrlo. Siga las instrucciones a continuación: 

    1. Inicializar el SDK de AdJust 
    2. Inicializar nuestro SDK de CMP
    3. Utilice nuestro SDK CMP para decidir automáticamente si necesita el cuadro de diálogo de consentimiento en la sesión actual.
    4. Si es necesario, se mostrará un cuadro de diálogo de consentimiento para capturar las opciones de consentimiento del usuario, ya sea aceptar todo, rechazar todo o personalizar las opciones.
    5. Obtener confirmación del CMP de que el usuario ha tomado su decisión de consentimiento y los datos están disponibles en SharedPreferences. Hay diferentes maneras de hacer esto con nuestro SDK de CMP. En el ejemplo a continuación, usamos el didReceiveConsent() devolución de llamada para ilustrar. 
    6. Como último paso, puede (a) invocar el updateThirdPartyConsent() método de nuestro SDK CMP, que pasará automáticamente los datos al SDK de AdJust a través de introspección/reflexión o los reemplazará por el código siguiente: 
          override fun didReceiveConsent(consent: String, jsonObject: Map<String, Any>) {
            Log.d("CMP DemoApp", "Consent Layer successfully received consent message.")
            // Retrieve Google Consent Mode data...
            val consentData = cmpManager.getGoogleConsentModeStatus();
    
    		// ... and parse it to pass to AdJust SDK
    		val adStorageConsent = consentSettings["ad_storage"] == "granted" ? "1" : "0"
            val adPersonalizationConsent = consentSettings["ad_personalization"] == "granted" ? "1" : "0"
    
    		val adjustThirdPartySharing = AdjustThirdPartySharing(true)
            adjustThirdPartySharing.addGranularOption("google_dma", "eea", "1");
            adjustThirdPartySharing.addGranularOption("google_dma", "ad_personalization", adPersonalizationConsent);
            adjustThirdPartySharing.addGranularOption("google_dma", "ad_user_data", adStorageConsent);
            Adjust.trackThirdPartySharing(adjustThirdPartySharing)        
        }

    Rama

    Este SDK no recupera los datos de consentimiento almacenados dentro del SharedPreferences área del dispositivo, por lo que tiene dos formas de lograr esta hazaña: (a) automática, que será manejada completamente por nuestro SDK de CMP; y (b) manual, donde utilizará las características de ambos SDK para lograr esto. 

    1. Inicialice Branch usando el token de su aplicación
    2. Inicializar nuestro SDK de CMP
    3. Utilice nuestro SDK CMP para decidir automáticamente si necesita el cuadro de diálogo de consentimiento en la sesión actual.
    4. Si es necesario, se mostrará un cuadro de diálogo de consentimiento para capturar las opciones de consentimiento del usuario, ya sea aceptar todo, rechazar todo o personalizar las opciones.
    5. Obtener confirmación del CMP de que el usuario ha tomado su decisión de consentimiento y los datos están disponibles en SharedPreferences. Hay diferentes maneras de hacer esto con nuestro SDK de CMP. En el ejemplo a continuación, usamos el didReceiveConsent() devolución de llamada para ilustrar. 
    6. Como último paso, puede (a) invocar el updateThirdPartyConsent() método de nuestro SDK CMP, que pasará automáticamente los datos al SDK de AdJust a través de introspección/reflexión o los reemplazará por el código siguiente: 
          override fun didReceiveConsent(consent: String, jsonObject: Map<String, Any>) {
            Log.d("CMP DemoApp", "Consent Layer successfully received consent message.")
            // Retrieve Google Consent Mode data...
            val consentData = cmpManager.getGoogleConsentModeStatus();
    
    		// ... and parse it to pass to AdJust SDK
    		val adStorageConsent = consentSettings["ad_storage"] == "granted"
            val adPersonalizationConsent = consentSettings["ad_personalization"] == "granted" 
    
            // Example for an EEA resident
            Branch.getInstance().setDMAParamsForEEA(true,adPersonalizationConsent,adStorageConsent)
    
            // Example for an non-EEA resident
            Branch.getInstance().setDMAParamsForEEA(false,adPersonalizationConsent,adStorageConsent)
              
            // For further information, check:
            // https://help.branch.io/developers-hub/docs/ios-advanced-features#user-data
    }

    Kochava

    Este SDK busca la cadena TCF almacenada dentro del SharedPreferences Área del dispositivo, que permite el flujo automático de los consentimientos recopilados en el dispositivo mediante nuestro SDK CMP a los eventos de AppsFlyer. Para transferir los datos de consentimiento a AppsFlyer, siga las instrucciones a continuación:

    1. Inicializar el SDK de Kochava 
    2. Inicializar nuestro SDK de CMP
    3. Utilice nuestro SDK CMP para decidir automáticamente si necesita el cuadro de diálogo de consentimiento en la sesión actual.
    4. Si es necesario, se mostrará un cuadro de diálogo de consentimiento para capturar las opciones de consentimiento del usuario, ya sea aceptar todo, rechazar todo o personalizar las opciones.
    5. Obtener confirmación del CMP de que el usuario ha tomado su decisión de consentimiento y los datos están disponibles en SharedPreferences. Hay diferentes maneras de hacer esto con nuestro SDK de CMP. En el ejemplo de la descripción general, usamos didReceiveConsent() devolución de llamada para lograr esto. 
    6. El último paso se puede realizar de dos maneras: (a) puedes seguir nuestro fragmento de código desde la descripción general o (b) puedes reemplazarlo por el de Kochava. startWithAppGuid() método. En este último caso, reemplace la línea dentro de nuestro didReceiveMessage devolución de llamada mediante la línea siguiente: 
    	Tracker.getInstance().startWithAppGuid(applicationContext, "YOUR_ANDROID_APP_GUID")	

    Singular

    Este SDK busca la cadena TCF almacenada dentro del SharedPreferences Área del dispositivo, que permite el flujo automático de los consentimientos recopilados en el dispositivo mediante nuestro SDK CMP a los eventos de AppsFlyer. Para transferir los datos de consentimiento a AppsFlyer, siga las instrucciones a continuación:

    1. Inicializar el SDK Singular 
    2. Inicializar nuestro SDK de CMP
    3. Utilice nuestro SDK CMP para decidir automáticamente si necesita el cuadro de diálogo de consentimiento en la sesión actual.
    4. Si es necesario, se mostrará un cuadro de diálogo de consentimiento para capturar las opciones de consentimiento del usuario, ya sea aceptar todo, rechazar todo o personalizar las opciones.
    5. Obtener confirmación del CMP de que el usuario ha tomado su decisión de consentimiento y los datos están disponibles en SharedPreferences. Hay diferentes maneras de hacer esto con nuestro SDK de CMP. En el ejemplo de la descripción general, usamos didReceiveConsent() devolución de llamada para lograr esto. 
    6. El último paso se puede realizar de dos maneras: (a) puedes seguir nuestro fragmento de código desde la descripción general o (b) puedes reemplazarlo por el de Singular. trackingOptIn() método. En este último caso, reemplace la línea dentro de nuestro didReceiveMessage devolución de llamada mediante la línea siguiente: 
    	Singular.trackingOptIn();

    Puente aéreo

    Este SDK busca la cadena TCF almacenada dentro del SharedPreferences Área del dispositivo, que permite el flujo automático de los consentimientos recopilados en el dispositivo mediante nuestro SDK CMP a los eventos de AppsFlyer. Para transferir los datos de consentimiento a AppsFlyer, siga las instrucciones a continuación:

    1. Inicializar el SDK de AirBridge 
    2. Inicializar nuestro SDK de CMP
    3. Utilice nuestro SDK CMP para decidir automáticamente si necesita el cuadro de diálogo de consentimiento en la sesión actual.
    4. Si es necesario, se mostrará un cuadro de diálogo de consentimiento para capturar las opciones de consentimiento del usuario, ya sea aceptar todo, rechazar todo o personalizar las opciones.
    5. Obtener confirmación del CMP de que el usuario ha tomado su decisión de consentimiento y los datos están disponibles en SharedPreferences. Hay diferentes maneras de hacer esto con nuestro SDK de CMP. En el ejemplo de la descripción general, usamos didReceiveConsent() devolución de llamada para lograr esto. 
    6. El último paso se puede realizar de dos maneras: (a) puede seguir nuestro fragmento de código desde la descripción general o (b) puede reemplazarlo por el de AirBridge. startTracking() método. En este último caso, reemplace la línea dentro de nuestro didReceiveMessage devolución de llamada mediante la línea siguiente: 
    	Airbridge.startTracking()

    Tenjín

    Este SDK busca la cadena TCF almacenada dentro del SharedPreferences Área del dispositivo, que permite el flujo automático de los consentimientos recopilados en el dispositivo mediante nuestro SDK CMP a los eventos de AppsFlyer. Para transferir los datos de consentimiento a AppsFlyer, siga las instrucciones a continuación:

    1. Inicializar el SDK de Tenjin 
    2. Inicializar nuestro SDK de CMP
    3. Utilice nuestro SDK CMP para decidir automáticamente si necesita el cuadro de diálogo de consentimiento en la sesión actual.
    4. Si es necesario, se mostrará un cuadro de diálogo de consentimiento para capturar las opciones de consentimiento del usuario, ya sea aceptar todo, rechazar todo o personalizar las opciones.
    5. Obtener confirmación del CMP de que el usuario ha tomado su decisión de consentimiento y los datos están disponibles en SharedPreferences. Hay diferentes maneras de hacer esto con nuestro SDK de CMP. En el ejemplo de la descripción general, usamos didReceiveConsent() devolución de llamada para lograr esto. 
    6. El último paso se puede realizar de dos maneras: (a) puedes seguir nuestro fragmento de código desde la descripción general o (b) puedes reemplazarlo por Tenjin. optIn()/optOut() métodos.

     

    Volver