Cadres de transparence et de consentement (IAB TCF)

Accès aux valeurs de consentement 

Le SDK définira les valeurs des préférences partagées pour IAB TCF v1 et IAB TCF v2. Ces valeurs peuvent être lues à l'aide du code suivant :

// =========================================================
// Kotlin version
// =========================================================

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);

// =========================================================
// Swift version
// =========================================================

import Foundation

class UserDefaultsObserver {
    private let userDefaults = UserDefaults.standard
    private var observer: NSObjectProtocol?

    init() {
        setupObserver()
    }

    private func setupObserver() {
        observer = NotificationCenter.default.addObserver(
            forName: UserDefaults.didChangeNotification,
            object: nil,
            queue: .main
        ) { [weak self] notification in
            guard let userDefaults = notification.object as? UserDefaults else { return }
            self?.handleUserDefaultsChange(userDefaults)
        }
    }

    private func handleUserDefaultsChange(_ userDefaults: UserDefaults) {
        // Check for changes in the specific consent key
        if userDefaults.object(forKey: "SpecificConsentKey") != nil {
            // Update consent settings
            updateConsentSettings()
        }
    }

    private func updateConsentSettings() {
        // Implement your consent settings update logic here
        print("Updating consent settings")
    }

    deinit {
        if let observer = observer {
            NotificationCenter.default.removeObserver(observer)
        }
    }
}

// Usage
let userDefaultsObserver = UserDefaultsObserver()

Les clés suivantes sont définies :

IAB TCF v2  
IABTCF_CmpSdkID Number: L'identifiant entier non signé du SDK CMP
IABTCF_CmpSdkVersion Number: Le numéro de version (entier non signé) du SDK CMP
IABTCF_PolicyVersion Number: L'entier non signé représentant la version du TCF à laquelle ces consentements se conforment.
IABTCF_gdprApplies Number:

1 Le RGPD s'applique dans le contexte actuel

0 – Le RGPD ne s'applique pas dans le contexte actuel

Non défini – indéterminé (valeur par défaut avant initialisation)

IABTCF_PublisherCC String: Code ISO 3166-1 alpha-2 à deux lettres – Par défaut : AA (inconnu)
IABTCF_PurposeOneTreatment Number:

0 – pas de traitement particulier pour la finalité n° 1

1 – finalité n° 1 non divulguée

Valeur par défaut non définie0

Les fournisseurs peuvent utiliser cette valeur pour déterminer si le consentement pour la finalité n° 1 est requis.

IABTCF_UseNonStandardStacks Number:

1 – Le CMP a utilisé une pile non standard

0 – Le CMP n'a pas utilisé de pile non standard

IABTCF_TCString String: Chaîne TC entièrement encodée
IABTCF_VendorConsents Binary String: Le '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut de consentement pour l'ID de fournisseur n+1 ; false et true respectivement. Par exemple '1' à l'index 0 est « consentement » true pour l'ID du fournisseur 1
IABTCF_VendorLegitimateInterests Binary String: Le '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut d'intérêt légitime pour l'ID de fournisseur n+1 ; false et true respectivement. Par exemple '1' à l'index 0 est-il établi l'intérêt légitime true pour l'ID du fournisseur 1
IABTCF_PurposeConsents Binary String: Le '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut de consentement pour l'ID de finalité n+1 ; false et true respectivement. Par exemple, '1' à l'index 0 est le consentement true pour l'ID de finalité 1
IABTCF_PurposeLegitimateInterests Binary String: Le '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut d'intérêt légitime pour l'ID de finalité n+1 ; false et true respectivement. Par exemple '1' à l'index 0 est-il établi qu'il s'agit d'un intérêt légitime true pour l'ID de finalité 1
IABTCF_SpecialFeaturesOptIns Binary String: L' '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut d'adhésion pour l'ID de fonctionnalité spéciale n+1 ; false et true respectivement. Par exemple '1' à l'index 0 est activé true pour l'ID de fonctionnalité spéciale 1
IABTCF_PublisherRestrictions{ID} String ['0','1', or '2']: la valeur à la position n – où l'indexation de n commence à 0 – indique le type de restriction de l'éditeur (0-2) pour le fournisseur n+1 ; (voir Types de restrictions de l'éditeur). Par exemple '2' à l'index 0 est restrictionType 2 pour l'ID du fournisseur 1. {ID} fait référence à l'ID de finalité.
IABTCF_PublisherConsent Binary String: Le '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut de consentement pour l'ID de finalité n+1 pour l'éditeur, car ils correspondent aux finalités de la liste globale des fournisseurs ; false et true respectivement. Par exemple '1' à l'index 0 est le consentement true pour l'ID de finalité 1
IABTCF_PublisherLegitimateInterests Binary String: Le '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut d’intérêt légitime pour l’ID de finalité n+1 pour l’éditeur, car il correspond aux finalités de la liste globale des fournisseurs ; false et true respectivement. Par exemple '1' à l'index 0 est établi l'intérêt légitime true pour l'ID de finalité 1
IABTCF_PublisherCustomPurposesConsents Binary String: L' '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut de consentement pour l'ID de finalité personnalisée n+1 de l'éditeur ; false et true respectivement. Par exemple '1' à l'index 0 est le consentement true pour l'ID de finalité personnalisée 1
IABTCF_PublisherCustomPurposesLegitimateInterests Binary String: Le '0' ou '1' à la position n – où l'indexation de n commence à 0 – indique le statut d'intérêt légitime pour l'ID de finalité personnalisée n+1 de l'éditeur ; false et true respectivement. Par exemple '1' à l'index 0 est l'intérêt légitime établi true pour l'ID de finalité personnalisée 1

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!