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 |