Cadres de transparence et de consentement (IAB TCF)
Accès aux valeurs de consentement
Le SDK définira les valeurs de 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:
TCF de l'IAB v2 | |
IABTCF_CmpSdkID |
Number : ID entier non signé du SDK CMP |
IABTCF_CmpSdkVersion |
Number : 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 adhèrent. |
IABTCF_gdprApplies |
Number :
once - indéterminé (par défaut avant l'initialisation) |
IABTCF_PublisherCC |
String : Code ISO 3166-1 alpha-2 à deux lettres - Défaut: AA (inconnu) |
IABTCF_PurposeOneTreatment |
Number :
Annuler la valeur par défaut - Les fournisseurs peuvent utiliser cette valeur pour déterminer si le consentement à la première fin est requis. |
IABTCF_UseNonStandardStacks |
Number :
|
IABTCF_TCString |
String : Chaîne TC entièrement codée |
IABTCF_VendorConsents |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut de consentement pour l'ID du fournisseur n + 1; false et true respectivement. par exemple. '1' à l'index 0 est le consentement true pour l'ID du fournisseur 1
|
IABTCF_VendorLegitimateInterests |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'intérêt légitime pour l'ID du fournisseur n + 1; false et true respectivement. par exemple. '1' à l'index 0 l'intérêt légitime est-il établi true pour l'ID du fournisseur 1
|
IABTCF_PurposeConsents |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut de consentement pour l'identification d'objet n + 1; false et true respectivement. par exemple. '1' à l'index 0 est le consentement true à des fins d'identification 1
|
IABTCF_PurposeLegitimateInterests |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'intérêt légitime pour l'identification d'objet n + 1; false et true respectivement. par exemple. '1' à l'index 0 l'intérêt légitime est-il établi true à des fins d'identification 1
|
IABTCF_SpecialFeaturesOptIns |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'activation pour l'ID de fonction spéciale n + 1; false et true respectivement. par exemple. '1' à l'index 0 est opt-in true pour l'ID de fonction spéciale 1
|
IABTCF_PublisherRestrictions{ID} |
String ['0','1', or '2'] : La valeur à la position n - où nl'indexation de 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 d'objet. |
IABTCF_PublisherConsent |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut de consentement à l'objectif pour l'ID d'objet n + 1 pour l'éditeur, car ils correspondent aux objectifs de la liste mondiale des fournisseurs; false et true respectivement. par exemple. '1' à l'index 0 est le consentement true à des fins d'identification 1
|
IABTCF_PublisherLegitimateInterests |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'intérêt légitime de la finalité pour l'identification de la finalité n + 1 pour l'éditeur, car ils correspondent aux objectifs de la liste mondiale des fournisseurs; false et true respectivement. par exemple. '1' à l'index 0 l'intérêt légitime est-il établi true à des fins d'identification 1
|
IABTCF_PublisherCustomPurposesConsents |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut de consentement à la finalité pour l'ID de finalité personnalisée de l'éditeur n + 1 pour l'éditeur; false et true respectivement. par exemple. '1' à l'index 0 est le consentement true pour un identifiant à usage personnalisé 1
|
IABTCF_PublisherCustomPurposesLegitimateInterests |
Binary String : Les '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'intérêt légitime de la finalité pour l'identifiant de finalité personnalisé de l'éditeur n + 1 pour l'éditeur; false et true respectivement. par exemple. '1' à l'index 0 l'intérêt légitime est-il établi true pour un identifiant à usage personnalisé 1
|