Transparenz- und Einwilligungsrahmenwerke (IAB TCF)

Zugriff auf die Einwilligungswerte 

Das SDK legt die Werte für die Shared Preferences für IAB TCF v1 und IAB TCF v2 fest. Diese Werte können mit dem folgenden Code ausgelesen werden:

// =========================================================
// 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()

Die folgenden Schlüssel sind definiert:

IAB TCF v2  
IABTCF_CmpSdkID Number: Die vorzeichenlose ganzzahlige ID des CMP-SDK
IABTCF_CmpSdkVersion Number: Die vorzeichenlose ganzzahlige Versionsnummer des CMP-SDK
IABTCF_PolicyVersion Number: Die vorzeichenlose Ganzzahl, die die Version des TCF angibt, an die sich diese Einwilligungen halten.
IABTCF_gdprApplies Number:

1 Die DSGVO gilt im aktuellen Kontext

0 – Die DSGVO gilt im aktuellen Kontext nicht

Nicht festgelegt – unbestimmt (Standardwert vor der Initialisierung)

IABTCF_PublisherCC String: Zweistelliger ISO 3166-1 Alpha-2-Code – Standard: AA (unbekannt)
IABTCF_PurposeOneTreatment Number:

0 – keine besondere Behandlung von Zweck 1

1 – Zweck 1 nicht offengelegt

Standardwert nicht festgelegt0

Anbieter können diesen Wert verwenden, um festzustellen, ob eine Einwilligung für Zweck 1 erforderlich ist.

IABTCF_UseNonStandardStacks Number:

1 – CMP verwendete einen nicht standardmäßigen Stack

0 – CMP hat keinen nicht standardmäßigen Stack verwendet

IABTCF_TCString String: Vollständig kodierte TC-Zeichenkette
IABTCF_VendorConsents Binary String: Der '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – gibt den Zustimmungsstatus für die Anbieter-ID n+1 an; false bzw. true jeweils. z. B. '1' am Index 0 ist die Einwilligung true für die Anbieter-ID 1
IABTCF_VendorLegitimateInterests Binary String: Die '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – den Status des berechtigten Interesses für die Anbieter-ID n+1 an; false bzw. true bzw. z. B. '1' am Index 0 ist das berechtigte Interesse true für die Anbieter-ID 1
IABTCF_PurposeConsents Binary String: Die '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – den Zustimmungsstatus für die Zweck-ID n+1 an; false bzw. true jeweils. z. B. '1' am Index 0 ist die Einwilligung true für Zweck-ID 1
IABTCF_PurposeLegitimateInterests Binary String: Die '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – den Status des berechtigten Interesses für die Zweck-ID n+1 an; false und true bzw. z. B. '1' am Index 0 ist das berechtigte Interesse für true für die Zweck-ID 1
IABTCF_SpecialFeaturesOptIns Binary String: Das '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – den Opt-in-Status für die Sonderfunktions-ID n+1 an; false bzw. true bzw. z. B. '1' am Index 0 ist die Opt-in-Einstellung true für die Sonderfunktion-ID 1
IABTCF_PublisherRestrictions{ID} String ['0','1', or '2']: Der Wert an Position n – wobei die Indizierung von n bei 0 – gibt den Typ der Herausgeberbeschränkung (0–2) für Anbieter n+1 an; (siehe Typen von Herausgeberbeschränkungen). z. B. '2' am Index 0 ist restrictionType 2 für die Anbieter-ID 1. {ID} bezieht sich auf die Zweck-ID.
IABTCF_PublisherConsent Binary String: Die '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – gibt den Zustimmungsstatus für die Zweck-ID n+1 für den Herausgeber an, da diese den Zwecken der Global Vendor List entsprechen; false und true jeweils. z. B. '1' am Index 0 ist die Einwilligung true für Zweck-ID 1
IABTCF_PublisherLegitimateInterests Binary String: Die '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – den Status des berechtigten Interesses für die Zweck-ID n+1 für den Herausgeber an, da diese den Zwecken der Global Vendor List entsprechen; false und true jeweils. z. B. '1' an Index 0 ist das berechtigte Interesse true für den Zweck mit der ID 1
IABTCF_PublisherCustomPurposesConsents Binary String: Das '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – gibt den Zustimmungsstatus für die benutzerdefinierte Zweck-ID n+1 des Herausgebers an; false bzw. true bzw. z. B. '1' am Index 0 ist die Einwilligung true für die benutzerdefinierte Zweck-ID 1
IABTCF_PublisherCustomPurposesLegitimateInterests Binary String: Die '0' oder '1' an Position n – wobei die Indizierung von n bei 0 – den Status des berechtigten Interesses für die benutzerdefinierte Zweck-ID n+1 des Herausgebers angibt; false und true jeweils. z. B. '1' am Index 0 ist das berechtigte Interesse für true für die benutzerdefinierte Zweck-ID 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!