Aperçu
Pour nos clients qui intègrent notre SDK CMP avec l'un des SDK tiers suivants, nous avons rédigé ce document dans lequel vous trouverez des guides individuels qui vous montreront comment les consentements recueillis à l'aide de notre SDK CMP sont transmis à ces SDK. Notre CMP est entièrement compatible avec la version 2.2 de la TCF ; il collecte les données de consentement DMA et les stocke dans SharedPreferences. Certains des SDK ci-dessous peuvent récupérer ces données automatiquement, tandis que d'autres nécessitent l'ajout de code. Veuillez consulter ci-dessous les cas d'utilisation individuels.
Respectez strictement l'ordre des différents appels aux SDK. Notre SDK CMP doit obtenir le consentement des utilisateurs avant de déclencher la moindre action dans les SDK tiers ci-dessous.
Sur certains SDK de fournisseurs tels qu'AppsFlyer, AdJust et Branch, vous devrez soit (a) invoquer notre updateThirdPartyConsent() méthode, qui transmettra automatiquement les consentements collectés à ces SDK via l'introspection/la réflexion, soit (b) utiliser leurs propres méthodes et propriétés pour le faire manuellement. Si vous utilisez notre SDK CMP pour gérer automatiquement la transmission des données de consentement, voici un exemple d'implémentation :
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()
}
}
Pour plus d'informations, consultez les instructions des tiers concernées ci-dessous.
AppsFlyer
Ce SDK recherche la chaîne TCF stockée dans la SharedPreferences zone de l'appareil, assurant un flux automatique des consentements collectés sur l'appareil via notre SDK CMP vers les événements AppsFlyer. Afin de transmettre les données de consentement à AppsFlyer, veuillez suivre les instructions ci-dessous :
- Initialisez le SDK AppsFlyer et activez la collecte de données TCF. Dans le code présenté dans la section « Aperçu » de ce document, remplacez la partie relative à l'initialisation des tiers par :
AppsFlyerLib.getInstance().init(<YOUR_DEV_KEY>, null, this);
AppsFlyerLib.enableTCFDataCollection(true);
- Initialisez notre SDK CMP
- Utilisez notre SDK CMP pour déterminer automatiquement si la boîte de dialogue de consentement est nécessaire dans la session en cours.
- Si nécessaire, une boîte de dialogue de consentement s'affichera pour recueillir les choix de l'utilisateur, qu'il s'agisse d'accepter tout, de tout refuser ou de personnaliser ses choix.
- Obtenez la confirmation du CMP que l'utilisateur a donné son consentement et que les données sont disponibles
SharedPreferences. Il existe différentes façons de procéder avec notre SDK CMP. Dans l'exemple de la présentation, nous utilisons ledidReceiveConsent()callback pour y parvenir. - La dernière étape peut être réalisée de deux façons : (a) vous pouvez suivre notre extrait de code issu de la présentation ou (b) vous pouvez le remplacer par la méthode d'AppFlyer
start(). Dans ce dernier cas, remplacez la ligne à l'intérieur de notredidReceiveMessagecallback par la ligne ci-dessous :
AppsFlyerLib.getInstance().start(this);
AdJust
Ce SDK ne récupère pas les données de consentement stockées dans la SharedPreferences de l'appareil ; vous disposez donc de deux méthodes pour y parvenir : (a) la méthode automatique, qui sera entièrement gérée par notre SDK CMP ; et (b) la méthode manuelle, où vous utiliserez les fonctionnalités des deux SDK pour y parvenir. Veuillez suivre les instructions ci-dessous :
- Initialisez le SDK AdJust
- Initialisez notre SDK CMP
- Utilisez notre SDK CMP pour déterminer automatiquement si la boîte de dialogue de consentement est nécessaire dans la session en cours.
- Si nécessaire, une boîte de dialogue de consentement s'affichera pour recueillir les choix de l'utilisateur, qu'il s'agisse d'accepter tout, de tout refuser ou de personnaliser ses choix.
- Obtenez la confirmation du CMP que l'utilisateur a donné son consentement et que les données sont disponibles
SharedPreferences. Il existe différentes façons de procéder avec notre SDK CMP. Dans l'exemple ci-dessous, nous utilisons ledidReceiveConsent()callback à titre d'illustration. - En dernière étape, vous pouvez soit (a) invoquer la
updateThirdPartyConsent()de notre SDK CMP, qui transmettra automatiquement les données au SDK d'AdJust via l'introspection/la réflexion, soit la remplacer par le code ci-dessous :
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
Ce SDK ne récupère pas les données de consentement stockées dans la SharedPreferences de l'appareil ; vous disposez donc de deux méthodes pour y parvenir : (a) la méthode automatique, qui sera entièrement gérée par notre SDK CMP ; et (b) la méthode manuelle, où vous utiliserez les fonctionnalités des deux SDK pour y parvenir.
- Initialisez Branch à l'aide du jeton de votre application
- Initialisez notre SDK CMP
- Utilisez notre SDK CMP pour déterminer automatiquement si la boîte de dialogue de consentement est nécessaire dans la session en cours.
- Si nécessaire, une boîte de dialogue de consentement s'affichera pour recueillir les choix de l'utilisateur, qu'il s'agisse d'accepter tout, de tout refuser ou de personnaliser ses choix.
- Obtenez la confirmation du CMP que l'utilisateur a donné son consentement et que les données sont disponibles
SharedPreferences. Il existe différentes façons de procéder avec notre SDK CMP. Dans l'exemple ci-dessous, nous utilisons ledidReceiveConsent()callback à titre d'illustration. - En dernière étape, vous pouvez soit (a) invoquer la
updateThirdPartyConsent()de notre SDK CMP, qui transmettra automatiquement les données au SDK d'AdJust via l'introspection/la réflexion, soit la remplacer par le code ci-dessous :
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
Ce SDK recherche la chaîne TCF stockée dans la SharedPreferences zone de l'appareil, assurant un flux automatique des consentements collectés sur l'appareil via notre SDK CMP vers les événements AppsFlyer. Afin de transmettre les données de consentement à AppsFlyer, veuillez suivre les instructions ci-dessous :
- Initialisez le SDK Kochava
- Initialisez notre SDK CMP
- Utilisez notre SDK CMP pour déterminer automatiquement si la boîte de dialogue de consentement est nécessaire dans la session en cours.
- Si nécessaire, une boîte de dialogue de consentement s'affichera pour recueillir les choix de l'utilisateur, qu'il s'agisse d'accepter tout, de tout refuser ou de personnaliser ses choix.
- Obtenez la confirmation du CMP que l'utilisateur a donné son consentement et que les données sont disponibles
SharedPreferences. Il existe différentes façons de procéder avec notre SDK CMP. Dans l'exemple de la présentation, nous utilisons ledidReceiveConsent()callback pour y parvenir. - La dernière étape peut être réalisée de deux façons : (a) vous pouvez suivre notre extrait de code issu de la présentation ou (b) vous pouvez le remplacer par la méthode de Kochava
startWithAppGuid(). Dans ce dernier cas, remplacez la ligne à l'intérieur de notredidReceiveMessagecallback par la ligne ci-dessous :
Tracker.getInstance().startWithAppGuid(applicationContext, "YOUR_ANDROID_APP_GUID")
Singulier
Ce SDK recherche la chaîne TCF stockée dans la SharedPreferences zone de l'appareil, assurant un flux automatique des consentements collectés sur l'appareil via notre SDK CMP vers les événements AppsFlyer. Afin de transmettre les données de consentement à AppsFlyer, veuillez suivre les instructions ci-dessous :
- Initialisez le SDK Singular
- Initialisez notre SDK CMP
- Utilisez notre SDK CMP pour déterminer automatiquement si la boîte de dialogue de consentement est nécessaire dans la session en cours.
- Si nécessaire, une boîte de dialogue de consentement s'affichera pour recueillir les choix de l'utilisateur, qu'il s'agisse d'accepter tout, de tout refuser ou de personnaliser ses choix.
- Obtenez la confirmation du CMP que l'utilisateur a donné son consentement et que les données sont disponibles
SharedPreferences. Il existe différentes façons de procéder avec notre SDK CMP. Dans l'exemple de la présentation, nous utilisons ledidReceiveConsent()callback pour y parvenir. - La dernière étape peut être réalisée de deux façons : (a) vous pouvez suivre notre extrait de code issu de la présentation générale ou (b) vous pouvez le remplacer par la méthode de Singular
trackingOptIn(). Dans ce dernier cas, remplacez la ligne à l'intérieur de notredidReceiveMessagecallback par la ligne ci-dessous :
Singular.trackingOptIn();
AirBridge
Ce SDK recherche la chaîne TCF stockée dans la SharedPreferences zone de l'appareil, assurant un flux automatique des consentements collectés sur l'appareil via notre SDK CMP vers les événements AppsFlyer. Afin de transmettre les données de consentement à AppsFlyer, veuillez suivre les instructions ci-dessous :
- Initialisez le SDK AirBridge
- Initialisez notre SDK CMP
- Utilisez notre SDK CMP pour déterminer automatiquement si la boîte de dialogue de consentement est nécessaire dans la session en cours.
- Si nécessaire, une boîte de dialogue de consentement s'affichera pour recueillir les choix de l'utilisateur, qu'il s'agisse d'accepter tout, de tout refuser ou de personnaliser ses choix.
- Obtenez la confirmation du CMP que l'utilisateur a donné son consentement et que les données sont disponibles
SharedPreferences. Il existe différentes façons de procéder avec notre SDK CMP. Dans l'exemple de la présentation, nous utilisons ledidReceiveConsent()callback pour y parvenir. - La dernière étape peut être réalisée de deux façons : (a) vous pouvez suivre notre extrait de code issu de la présentation générale ou (b) vous pouvez le remplacer par la méthode d'AirBridge
startTracking(). Dans ce dernier cas, remplacez la ligne à l'intérieur de notredidReceiveMessagecallback par la ligne ci-dessous :
Airbridge.startTracking()
Tenjin
Ce SDK recherche la chaîne TCF stockée dans la SharedPreferences zone de l'appareil, assurant un flux automatique des consentements collectés sur l'appareil via notre SDK CMP vers les événements AppsFlyer. Afin de transmettre les données de consentement à AppsFlyer, veuillez suivre les instructions ci-dessous :
- Initialisez le SDK Tenjin
- Initialisez notre SDK CMP
- Utilisez notre SDK CMP pour déterminer automatiquement si la boîte de dialogue de consentement est nécessaire dans la session en cours.
- Si nécessaire, une boîte de dialogue de consentement s'affichera pour recueillir les choix de l'utilisateur, qu'il s'agisse d'accepter tout, de tout refuser ou de personnaliser ses choix.
- Obtenez la confirmation du CMP que l'utilisateur a donné son consentement et que les données sont disponibles
SharedPreferences. Il existe différentes façons de procéder avec notre SDK CMP. Dans l'exemple de la présentation, nous utilisons ledidReceiveConsent()callback pour y parvenir. - La dernière étape peut être réalisée de deux façons : (a) vous pouvez suivre notre extrait de code figurant dans l'aperçu ou (b) vous pouvez le remplacer par les méthodes Tenjin
optIn()/optOut().