[Android] Tredjepartsappattributionspartners (AAP)
Översikt
För våra kunder som integrerar vårt CMP SDK tillsammans med ett av följande tredjeparts-SDK:er har vi sammanställt det här dokumentet där du hittar individuella guider som visar hur samtycken som samlas in med vårt CMP SDK skickas till dessa SDK:er. Vår CMP är helt kompatibel med TCF v3 och samlar in DMA-samtyckesdata och lagrar den i SharedPreferencesVissa av SDK:erna nedan kan hämta dessa data automatiskt, och vissa kräver kod. Se de enskilda användningsfallen nedan.
Följ noggrant ordningen på de olika SDK-anropen. Vårt CMP SDK måste inhämta användarnas samtycke innan någon åtgärd kan vidtas i tredjeparts-SDK:er. nedan.
På vissa SDK:er från leverantörer som AppsFlyer, AdJust och branch måste du antingen (a) anropa vår updateThirdPartyConsent() metod, som automatiskt skickar de insamlade samtyckena till dessa SDK:er via introspektion/reflektion, eller (b) använder sina egna metoder och egenskaper för att göra det manuellt. Om du använder vårt CMP SDK för att automatiskt hantera överföringen av samtycksdata, här är ett exempel på implementering:
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()
}
}
För mer information, fortsätt till respektive tredjepartsinstruktioner nedan.
AppsFlyer
Detta SDK söker efter TCF-strängar som lagras inuti SharedPreferences enhetens område, vilket automatiskt överför samtycken som samlats in på enheten via vårt CMP SDK till AppsFlyer-händelser. För att skicka samtyckesdata till AppsFlyer, följ instruktionerna nedan:
- Initiera AppsFlyer SDK och aktivera TCF-datainsamlingI koden som presenteras i översiktsavsnittet i detta dokument, ersätt delen om tredjepartsinitiering med:
AppsFlyerLib.getInstance().init(<YOUR_DEV_KEY>, null, this);
AppsFlyerLib.enableTCFDataCollection(true);
- Initiera vårt CMP SDK
- Använd vårt CMP SDK för att automatiskt avgöra om du behöver samtyckesdialogrutan i den aktuella sessionen.
- Om det behövs visas en dialogruta för samtycke för att samla in användarens samtyckesval, oavsett om det är att acceptera alla, avvisa alla eller anpassa val.
- Få bekräftelse från CMP:n att användaren har fattat sitt samtyckesbeslut och att uppgifterna är tillgängliga i
SharedPreferences. Det finns olika sätt att göra detta med vårt CMP SDK. I exemplet i översikten använder vididReceiveConsent()återuppringning för att uppnå detta. - Det sista steget kan utföras på två sätt: (a) du kan följa vår kodstycke från översikten eller (b) du kan ersätta det med AppFlyers
start()metod. I det senare fallet, byt ut linjen inuti vårdidReceiveMessageåteruppringning via raden nedan:
AppsFlyerLib.getInstance().start(this);
Justera
Detta SDK hämtar inte samtyckesdata som lagras inuti SharedPreferences enhetens område, så du har två sätt att uppnå detta: (a) automatiskt, vilket hanteras helt av vårt CMP SDK; och (b) manuellt, där du använder båda SDK:ernas funktioner för att uppnå detta. Följ instruktionerna nedan:
- Initiera AdJust SDK
- Initiera vårt CMP SDK
- Använd vårt CMP SDK för att automatiskt avgöra om du behöver samtyckesdialogrutan i den aktuella sessionen.
- Om det behövs visas en dialogruta för samtycke för att samla in användarens samtyckesval, oavsett om det är att acceptera alla, avvisa alla eller anpassa val.
- Få bekräftelse från CMP:n att användaren har fattat sitt samtyckesbeslut och att uppgifterna är tillgängliga i
SharedPreferences. Det finns olika sätt att göra detta med vårt CMP SDK. I exemplet nedan använder vididReceiveConsent()återuppringning för att illustrera. - Som ett sista steg kan du antingen (a) anropa
updateThirdPartyConsent()metod från vårt CMP SDK, som automatiskt skickar data till AdJusts SDK via introspektion/reflektion eller ersätter den med koden nedan:
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)
}
Branch
Detta SDK hämtar inte samtyckesdata som lagras inuti SharedPreferences området på enheten, så du har två sätt att uppnå detta: (a) automatisk, som hanteras helt av vårt CMP SDK; och (b) manuell, där du använder båda SDK:ernas funktioner för att uppnå detta.
- Initiera grenen med din app-token
- Initiera vårt CMP SDK
- Använd vårt CMP SDK för att automatiskt avgöra om du behöver samtyckesdialogrutan i den aktuella sessionen.
- Om det behövs visas en dialogruta för samtycke för att samla in användarens samtyckesval, oavsett om det är att acceptera alla, avvisa alla eller anpassa val.
- Få bekräftelse från CMP:n att användaren har fattat sitt samtyckesbeslut och att uppgifterna är tillgängliga i
SharedPreferences. Det finns olika sätt att göra detta med vårt CMP SDK. I exemplet nedan använder vididReceiveConsent()återuppringning för att illustrera. - Som ett sista steg kan du antingen (a) anropa
updateThirdPartyConsent()metod från vårt CMP SDK, som automatiskt skickar data till AdJusts SDK via introspektion/reflektion eller ersätter den med koden nedan:
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
Detta SDK söker efter TCF-strängar som lagras inuti SharedPreferences enhetens område, vilket automatiskt överför samtycken som samlats in på enheten via vårt CMP SDK till AppsFlyer-händelser. För att skicka samtyckesdata till AppsFlyer, följ instruktionerna nedan:
- Initiera Kochava SDK
- Initiera vårt CMP SDK
- Använd vårt CMP SDK för att automatiskt avgöra om du behöver samtyckesdialogrutan i den aktuella sessionen.
- Om det behövs visas en dialogruta för samtycke för att samla in användarens samtyckesval, oavsett om det är att acceptera alla, avvisa alla eller anpassa val.
- Få bekräftelse från CMP:n att användaren har fattat sitt samtyckesbeslut och att uppgifterna är tillgängliga i
SharedPreferences. Det finns olika sätt att göra detta med vårt CMP SDK. I exemplet i översikten använder vididReceiveConsent()återuppringning för att uppnå detta. - Det sista steget kan utföras på två sätt: (a) du kan följa vår kodstycke från översikten eller (b) du kan ersätta det med Kochavas
startWithAppGuid()metod. I det senare fallet, byt ut linjen inuti vårdidReceiveMessageåteruppringning via raden nedan:
Tracker.getInstance().startWithAppGuid(applicationContext, "YOUR_ANDROID_APP_GUID")
Singular
Detta SDK söker efter TCF-strängar som lagras inuti SharedPreferences enhetens område, vilket automatiskt överför samtycken som samlats in på enheten via vårt CMP SDK till AppsFlyer-händelser. För att skicka samtyckesdata till AppsFlyer, följ instruktionerna nedan:
- Initiera Singular SDK
- Initiera vårt CMP SDK
- Använd vårt CMP SDK för att automatiskt avgöra om du behöver samtyckesdialogrutan i den aktuella sessionen.
- Om det behövs visas en dialogruta för samtycke för att samla in användarens samtyckesval, oavsett om det är att acceptera alla, avvisa alla eller anpassa val.
- Få bekräftelse från CMP:n att användaren har fattat sitt samtyckesbeslut och att uppgifterna är tillgängliga i
SharedPreferences. Det finns olika sätt att göra detta med vårt CMP SDK. I exemplet i översikten använder vididReceiveConsent()återuppringning för att uppnå detta. - Det sista steget kan utföras på två sätt: (a) du kan följa vår kodstycke från översikten eller (b) du kan ersätta det med Singulars
trackingOptIn()metod. I det senare fallet, byt ut linjen inuti vårdidReceiveMessageåteruppringning via raden nedan:
Singular.trackingOptIn();
AirBridge
Detta SDK söker efter TCF-strängar som lagras inuti SharedPreferences enhetens område, vilket automatiskt överför samtycken som samlats in på enheten via vårt CMP SDK till AppsFlyer-händelser. För att skicka samtyckesdata till AppsFlyer, följ instruktionerna nedan:
- Initiera AirBridge SDK
- Initiera vårt CMP SDK
- Använd vårt CMP SDK för att automatiskt avgöra om du behöver samtyckesdialogrutan i den aktuella sessionen.
- Om det behövs visas en dialogruta för samtycke för att samla in användarens samtyckesval, oavsett om det är att acceptera alla, avvisa alla eller anpassa val.
- Få bekräftelse från CMP:n att användaren har fattat sitt samtyckesbeslut och att uppgifterna är tillgängliga i
SharedPreferences. Det finns olika sätt att göra detta med vårt CMP SDK. I exemplet i översikten använder vididReceiveConsent()återuppringning för att uppnå detta. - Det sista steget kan utföras på två sätt: (a) du kan följa vår kodstycke från översikten eller (b) du kan ersätta det med AirBridges
startTracking()metod. I det senare fallet, byt ut linjen inuti vårdidReceiveMessageåteruppringning via raden nedan:
Airbridge.startTracking()
tenjin
Detta SDK söker efter TCF-strängar som lagras inuti SharedPreferences enhetens område, vilket automatiskt överför samtycken som samlats in på enheten via vårt CMP SDK till AppsFlyer-händelser. För att skicka samtyckesdata till AppsFlyer, följ instruktionerna nedan:
- Initiera Tenjin SDK
- Initiera vårt CMP SDK
- Använd vårt CMP SDK för att automatiskt avgöra om du behöver samtyckesdialogrutan i den aktuella sessionen.
- Om det behövs visas en dialogruta för samtycke för att samla in användarens samtyckesval, oavsett om det är att acceptera alla, avvisa alla eller anpassa val.
- Få bekräftelse från CMP:n att användaren har fattat sitt samtyckesbeslut och att uppgifterna är tillgängliga i
SharedPreferences. Det finns olika sätt att göra detta med vårt CMP SDK. I exemplet i översikten använder vididReceiveConsent()återuppringning för att uppnå detta. - Det sista steget kan utföras på två sätt: (a) du kan följa vår kodbit från översikten eller (b) du kan ersätta den med Tenjin
optIn()/optOut()metoder.







