The General Data Protection Regulation (GDPR) was created to provide European users with greater transparency and control over their personal information.
As a publisher, you should integrate a Consent Management Platform (CMP) and request for the user, vendor, and purposes consent as outlined in IAB Europe’s Transparency and Consent Framework (TCF 2.0). The IAB provides an open-source CMP if needed.
For VIS.X® SDK, you need to ensure that your user is consenting to these three purposes for Vendor “YOC AG” (id: 154):
- Purpose 1 - Store and/or access information on a device
 - Purpose 2 - Select basic ads
 - Purpose 7 - Measure ad performance
 
The VIS.X® SDK will not process any personal data if consent is not explicitly given by the user for the above-mentioned purposes, eventually leading to non-monetized traffic!
Using a custom CMP
Using the custom CMP, you may need to store the TCF 2.0 consent string manually in the SharedPreferences (Android) / UserDefaults (iOS), using the following keys:
| Key | Type | Description | 
|---|---|---|
| IABTCF_TCString | String | Base64-encoded consent string as defined in IAB Tech Lab. | 
| IABTCF_gdprApplies | Number (Integer) | 1: Subject to GDPR (default)  0: Not subject to GDPR  | 
Manual Setup for Android
In case your CMP is not able to set SharedPreferences itself, you need to apply it on your own.
//kotlin
val sharedPref = PreferenceManager.getDefaultSharedPreferences(this) ?: return
with (sharedPref.edit()) {
    putString("IABTCF_TCString", "<yourCMPComputedConsentStringBase64format>");
    putInt("IABTCF_gdprApplies", 1);            
    apply()
}
Manual Setup for iOS
In case your CMP is not able to set UserDefaults itself, you need to apply it on your own.
UserDefaults.standard.set("yourCMPConsentString", 
                      forKey: "IABTCF_TCString")
UserDefaults.standard.set(1, forKey: "IABTCF_gdprApplies")