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:
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:
Valeur par défaut non définie – Les fournisseurs peuvent utiliser cette valeur pour déterminer si le consentement pour la finalité n° 1 est requis. |
IABTCF_UseNonStandardStacks |
Number:
|
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
|