[Android] Drittanbieter-App-Attributionspartner (AAPs)

Übersicht

Für unsere Kunden, die unser CMP-SDK zusammen mit einem der folgenden SDKs von Drittanbietern integrieren, haben wir dieses Dokument erstellt, in dem Sie einzelne Anleitungen finden, die zeigen, wie die mit unserem CMP-SDK erfassten Einwilligungen an diese SDKs weitergeleitet werden. Unser CMP ist vollständig kompatibel mit TCF v2.2 und erfasst DMA-Einwilligungsdaten, die in SharedPreferences. Einige der unten aufgeführten SDKs können diese Daten automatisch abrufen, andere erfordern etwas Programmieraufwand. Bitte sehen Sie sich die einzelnen Anwendungsfälle unten an.  

Halten Sie sich strikt an die Reihenfolge der verschiedenen SDK-Aufrufe. Unser CMP-SDK muss die Einwilligung der Nutzer einholen, bevor es irgendeine Aktion in den unten aufgeführten SDKs von Drittanbietern auslöst.

Bei einigen SDKs von Anbietern wie AppsFlyer, AdJust und Branch müssen Sie entweder (a) unsere updateThirdPartyConsent() , die die gesammelten Einwilligungen automatisch per Introspektion/Reflexion an diese SDKs weiterleitet, oder (b) deren eigene Methoden und Eigenschaften nutzen, um dies manuell zu tun. Falls du unser CMP-SDK verwendest, um die Weitergabe der Einwilligungsdaten automatisch abzuwickeln, findest du hier ein Implementierungsbeispiel: 

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

Weitere Informationen finden Sie in den entsprechenden Anleitungen von Drittanbietern weiter unten.

AppsFlyer

Dieses SDK sucht nach einer TCF-Zeichenkette, die im SharedPreferences Gerätespeicher, und sorgt für einen automatischen Datenfluss der über unser CMP-SDK auf dem Gerät erfassten Einwilligungen zu AppsFlyer-Ereignissen. Um Einwilligungsdaten an AppsFlyer zu übermitteln, befolge bitte die folgenden Anweisungen:

  1. Initialisieren Sie das AppsFlyer-SDK und aktivieren Sie die TCF-Datenerfassung. Ersetzen Sie im Code, der im Abschnitt „Übersicht“ dieses Dokuments aufgeführt ist, den Teil zur Initialisierung von Drittanbietern durch:
            AppsFlyerLib.getInstance().init(<YOUR_DEV_KEY>, null, this);
    		AppsFlyerLib.enableTCFDataCollection(true);
    1. Initialisieren Sie unser CMP-SDK
    2. Verwenden Sie unser CMP-SDK, um automatisch zu entscheiden, ob Sie den Einwilligungsdialog in der aktuellen Sitzung benötigen.
    3. Bei Bedarf wird ein Einwilligungsdialog angezeigt, um die Einwilligungsentscheidungen des Nutzers zu erfassen, sei es „Alle akzeptieren“, „Alle ablehnen“ oder „Einstellungen anpassen“.
    4. Lassen Sie sich vom CMP bestätigen, dass der Nutzer seine Einwilligungsentscheidung getroffen hat und die Daten verfügbar sind SharedPreferences. Mit unserem CMP-SDK gibt es verschiedene Möglichkeiten, dies zu tun. Im Beispiel in der Übersicht verwenden wir den didReceiveConsent() Callback, um dies zu erreichen. 
    5. Der letzte Schritt kann auf zwei Arten durchgeführt werden: (a) Sie können unseren Code-Schnipsel aus der Übersicht verwenden oder (b) Sie können ihn durch die Methode von AppFlyer start() Methode ersetzen. Im letzteren Fall ersetzen Sie die Zeile in unserem didReceiveMessage Callback durch die folgende Zeile: 
            AppsFlyerLib.getInstance().start(this);

    AdJust

    Dieses SDK ruft keine Einwilligungsdaten ab, die im SharedPreferences Gerätes, daher haben Sie zwei Möglichkeiten, dies zu erreichen: (a) automatisch, was vollständig von unserem CMP-SDK übernommen wird; und (b) manuell, wobei Sie beide SDK-Funktionen nutzen, um dies zu erreichen. Bitte befolgen Sie die folgenden Anweisungen: 

    1. Initialisieren Sie das AdJust SDK 
    2. Initialisieren Sie unser CMP-SDK
    3. Verwenden Sie unser CMP-SDK, um automatisch zu entscheiden, ob Sie den Einwilligungsdialog in der aktuellen Sitzung benötigen.
    4. Bei Bedarf wird ein Einwilligungsdialog angezeigt, um die Einwilligungsentscheidungen des Nutzers zu erfassen, sei es „Alle akzeptieren“, „Alle ablehnen“ oder „Einstellungen anpassen“.
    5. Lassen Sie sich vom CMP bestätigen, dass der Nutzer seine Einwilligungsentscheidung getroffen hat und die Daten verfügbar sind SharedPreferences. Mit unserem CMP-SDK gibt es verschiedene Möglichkeiten, dies zu tun. Im folgenden Beispiel verwenden wir den didReceiveConsent() Callback zur Veranschaulichung. 
    6. Als letzten Schritt können Sie entweder (a) die updateThirdPartyConsent() Methode aus unserem CMP-SDK aufrufen, die die Daten automatisch per Introspektion/Reflexion an das AdJust-SDK weiterleitet, oder sie durch den folgenden Code ersetzen: 
          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)        
        }

    Branche

    Dieses SDK ruft keine Einwilligungsdaten ab, die im SharedPreferences Gerätespeicher ab, sodass Sie zwei Möglichkeiten haben, dies zu erreichen: (a) automatisch, was vollständig von unserem CMP-SDK übernommen wird; und (b) manuell, wobei Sie beide SDK-Funktionen nutzen, um dies zu erreichen. 

    1. Initialisieren Sie Branch mit Ihrem App-Token
    2. Initialisieren Sie unser CMP-SDK
    3. Verwenden Sie unser CMP-SDK, um automatisch zu entscheiden, ob Sie den Einwilligungsdialog in der aktuellen Sitzung benötigen.
    4. Bei Bedarf wird ein Einwilligungsdialog angezeigt, um die Einwilligungsentscheidungen des Nutzers zu erfassen, sei es „Alle akzeptieren“, „Alle ablehnen“ oder „Einstellungen anpassen“.
    5. Lassen Sie sich vom CMP bestätigen, dass der Nutzer seine Einwilligungsentscheidung getroffen hat und die Daten verfügbar sind SharedPreferences. Mit unserem CMP-SDK gibt es verschiedene Möglichkeiten, dies zu tun. Im folgenden Beispiel verwenden wir den didReceiveConsent() Callback zur Veranschaulichung. 
    6. Als letzten Schritt können Sie entweder (a) die updateThirdPartyConsent() Methode aus unserem CMP-SDK aufrufen, die die Daten automatisch per Introspektion/Reflexion an das AdJust-SDK weiterleitet, oder sie durch den folgenden Code ersetzen: 
          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

    Dieses SDK sucht nach einer TCF-Zeichenkette, die im SharedPreferences Gerätespeicher, und sorgt für einen automatischen Datenfluss der über unser CMP-SDK auf dem Gerät erfassten Einwilligungen zu AppsFlyer-Ereignissen. Um Einwilligungsdaten an AppsFlyer zu übermitteln, befolge bitte die folgenden Anweisungen:

    1. Initialisieren Sie das Kochava SDK 
    2. Initialisieren Sie unser CMP-SDK
    3. Verwenden Sie unser CMP-SDK, um automatisch zu entscheiden, ob Sie den Einwilligungsdialog in der aktuellen Sitzung benötigen.
    4. Bei Bedarf wird ein Einwilligungsdialog angezeigt, um die Einwilligungsentscheidungen des Nutzers zu erfassen, sei es „Alle akzeptieren“, „Alle ablehnen“ oder „Einstellungen anpassen“.
    5. Lassen Sie sich vom CMP bestätigen, dass der Nutzer seine Einwilligungsentscheidung getroffen hat und die Daten verfügbar sind SharedPreferences. Mit unserem CMP-SDK gibt es verschiedene Möglichkeiten, dies zu tun. Im Beispiel in der Übersicht verwenden wir den didReceiveConsent() Callback, um dies zu erreichen. 
    6. Der letzte Schritt kann auf zwei Arten durchgeführt werden: (a) Sie können unserem Code-Schnipsel aus der Übersicht folgen oder (b) Sie können ihn durch die Methode von Kochava startWithAppGuid() Methode ersetzen. Im letzteren Fall ersetzen Sie die Zeile in unserem didReceiveMessage Callback durch die folgende Zeile: 
    	Tracker.getInstance().startWithAppGuid(applicationContext, "YOUR_ANDROID_APP_GUID")	

    Singular

    Dieses SDK sucht nach einer TCF-Zeichenkette, die im SharedPreferences Gerätespeicher, und sorgt für einen automatischen Fluss der über unser CMP-SDK auf dem Gerät erfassten Einwilligungen zu AppsFlyer-Ereignissen. Um Einwilligungsdaten an AppsFlyer zu übermitteln, befolge bitte die folgenden Anweisungen:

    1. Initialisiere das Singular SDK 
    2. Initialisieren Sie unser CMP-SDK
    3. Verwenden Sie unser CMP-SDK, um automatisch zu entscheiden, ob Sie den Einwilligungsdialog in der aktuellen Sitzung benötigen.
    4. Bei Bedarf wird ein Einwilligungsdialog angezeigt, um die Einwilligungsentscheidungen des Nutzers zu erfassen, sei es „Alle akzeptieren“, „Alle ablehnen“ oder „Einstellungen anpassen“.
    5. Lassen Sie sich vom CMP bestätigen, dass der Nutzer seine Einwilligungsentscheidung getroffen hat und die Daten verfügbar sind SharedPreferences. Mit unserem CMP-SDK gibt es verschiedene Möglichkeiten, dies zu tun. Im Beispiel in der Übersicht verwenden wir den didReceiveConsent() Callback, um dies zu erreichen. 
    6. Der letzte Schritt kann auf zwei Arten durchgeführt werden: (a) Sie können unserem Code-Schnipsel aus der Übersicht folgen oder (b) Sie können ihn durch die Methode von Singular trackingOptIn() Methode von Singular ersetzen. Im letzteren Fall ersetzen Sie die Zeile in unserem didReceiveMessage Callback durch die folgende Zeile: 
    	Singular.trackingOptIn();

    AirBridge

    Dieses SDK sucht nach dem TCF-String, der im SharedPreferences Gerätespeicher, und sorgt für einen automatischen Datenfluss der über unser CMP-SDK auf dem Gerät erfassten Einwilligungen zu AppsFlyer-Ereignissen. Um Einwilligungsdaten an AppsFlyer zu übermitteln, befolge bitte die folgenden Anweisungen:

    1. Initialisieren Sie das AirBridge SDK 
    2. Initialisieren Sie unser CMP-SDK
    3. Verwenden Sie unser CMP-SDK, um automatisch zu entscheiden, ob Sie den Einwilligungsdialog in der aktuellen Sitzung benötigen.
    4. Bei Bedarf wird ein Einwilligungsdialog angezeigt, um die Einwilligungsentscheidungen des Nutzers zu erfassen, sei es „Alle akzeptieren“, „Alle ablehnen“ oder „Einstellungen anpassen“.
    5. Lassen Sie sich vom CMP bestätigen, dass der Nutzer seine Einwilligungsentscheidung getroffen hat und die Daten verfügbar sind SharedPreferences. Mit unserem CMP-SDK gibt es verschiedene Möglichkeiten, dies zu tun. Im Beispiel in der Übersicht verwenden wir den didReceiveConsent() Callback, um dies zu erreichen. 
    6. Der letzte Schritt kann auf zwei Arten durchgeführt werden: (a) Sie können unserem Code-Schnipsel aus der Übersicht folgen oder (b) Sie können ihn durch die Methode von AirBridge startTracking() Methode ersetzen. Im letzteren Fall ersetzen Sie die Zeile in unserem didReceiveMessage Callback durch die folgende Zeile: 
    	Airbridge.startTracking()

    Tenjin

    Dieses SDK sucht nach einer TCF-Zeichenkette, die im SharedPreferences Gerätespeicher, und sorgt für einen automatischen Datenfluss der über unser CMP-SDK auf dem Gerät erfassten Einwilligungen an AppsFlyer-Ereignisse. Um Einwilligungsdaten an AppsFlyer zu übermitteln, befolge bitte die folgenden Anweisungen:

    1. Initialisieren Sie das Tenjin SDK 
    2. Initialisieren Sie unser CMP-SDK
    3. Verwenden Sie unser CMP-SDK, um automatisch zu entscheiden, ob Sie den Einwilligungsdialog in der aktuellen Sitzung benötigen.
    4. Bei Bedarf wird ein Einwilligungsdialog angezeigt, um die Einwilligungsentscheidungen des Nutzers zu erfassen, sei es „Alle akzeptieren“, „Alle ablehnen“ oder „Einstellungen anpassen“.
    5. Lassen Sie sich vom CMP bestätigen, dass der Nutzer seine Einwilligungsentscheidung getroffen hat und die Daten verfügbar sind SharedPreferences. Mit unserem CMP-SDK gibt es verschiedene Möglichkeiten, dies zu tun. Im Beispiel in der Übersicht verwenden wir den didReceiveConsent() Callback, um dies zu erreichen. 
    6. Der letzte Schritt kann auf zwei Arten durchgeführt werden: (a) Sie können unseren Code-Schnipsel aus der Übersicht verwenden oder (b) Sie können ihn durch Tenjin-Methoden optIn()/optOut() .

     

    We do our best to keep this purely informative documentation up to date. However, if you notice that any of these guides need a little touch-up, let us know!