- Caching solutions - Improved our cache solution to provide faster initializations and better UX
- [Fix] Crash when attempting to restore user session with controller id that only has TCF component
- [Fix] Fixed issues related to dismissing banners in inactive activities.
- Added support for right-to-left (RTL) languages in our SDK for enhanced localization and global accessibility.
- General fixes and performance improvements
- Update to improve compatibility and ensure smoother performance with Google Consent Mode
- Update to improve compatibility and ensure smoother performance with Google Consent Mode
- TCF V5 - Updated to new TCF Policy version
- Updated TCF banner second's layer to reflect the latest addition of Special Purpose 3
- Updated TCF banner second's layer to include information related to the CMP’s maximum device storage duration
- Adjust Consent Mediation
- Adding support for new Adjust version 5
- Adjust version 4 will be supported until October 31, 2024
- ironSource Consent Mediation for CCPA not being applied
- HTML text not being rendered correctly
- New timeout mode - In this version, you are able to customize the global timeout for the maximum amount of time that the SDK should take to fully initialize, just set the new parameter on the UsercentricsOptions
- Toggle visibility of Deny Button on Second Layer for TVs
- Stability improvements when initializing the SDK
- Google Consent Mode: Enhanced implementation when integrating with the TCF framework
- Deprecating copy field from UsercentricsLabels
- Crash when invoking showSecondLayer(...) method without arguments
- Adding missing labels in UsercentrisLabels object
- Rare crash when initializing the SDK with TCF configuration
- Unity Ads SDK Mediation adjusts
- Firebase Consent Mediation: Improved integration with its flags
- Fixed issues related to displaying banners in inactive activities
- Addressed sporadic crashes during TCF banner initializations on iOS.
- Enhanced code efficiency for smoother consent banner displays.
- Consent mediation - Specific implementation for Firebase Analytics and Advertising SDK
- Reset method deprecated for the SDK, React Native, Flutter and Unity
- Added support for new TCF languages
- Change TCF resurface period: from 13 months to 390 days
- UI improvement
- Some DPSs had the cookie storage wrongly displayed
- Upgrade to latest Kotlin version 1.9.23
- Officially changed Android SDK minimum version to API 21
- Releasing iOS SDKs that supports manual linkage
- General improvements on Google Consent Mode
- Apple Privacy Manifest** - Added new requirements to support new compliance rules, check them out here
- Crashes on Xcode 15.2 when using new Apple's libraries linkage mechanism
- IronSource Consent Mediation integration tweaks to support their latest release
- Links not supported on banner message customizations were being displayed
- Controller ID card were not visible in certain conditions when Google Additional Providers were not present
- GDPR Banner was reappearing after a very specific scenario that changed the rule if it should be resurfaced or not
- Supports Read More on Banner Message - Adds support to have a "read more" button on banner message displayed on the First Layer
- Sporadically crashes on
getUserSessionData
API
- Sporadically crashes on TCF banner initializations
- Stability improvements
- Resurface Banner for Additional Tech Providers - When changing Additional Tech Providers from Google, we are now enabling an option on Admin Interface to choose whether this should cause the banner to resurface or not
- Documentation about Consent Mediation on Flutter and React Native
- Support for Android Gradle Plugin 8 for Flutter
- Reset API will be deprecated in future versions
- UI improvements on spacing between labels
Clear User Session - Introducing a new API designed to simplify the process of clearing user sessions
Google Consent Mode Granular Choices - Enhances integration with Google SDKs by updating to the latest changes.
Adjust Granular Consent - By Using Consent Mediation, we have fully integrated with Adjust SDK updates associated with the DMA
[Fix] Adjusts in landscape mode where labels were not fully aligned with other elements of the screen [tvOS Fix] Numerous layout modifications have been made to address the arrangement of titles and the rendering of other elements in languages that result in larger text sizes
[Fix] Removes deprecated field TCFVendor::deviceStorage [Fix] In certain scenarios, the 'Save Settings' button color was not customizable
- Initialization with SettingsId was not reporting the
status
correctly
New Usercentrics Ready API - The API's new properties introduce a feature that, through Rulesets, allows identification of scenarios where the banner may be bypassed in specific locations, check it out
Removes TCF 2.0 warnings - Since TCF 2.0 has been deprecated, we've removed all warnings regarding the usage of version 2.0 of this framework New TCF 2.2 Stacks - Added support for Stacks 44 and 45
[Warning]
[Fix] Banner was not correctly rendered given some specific programmatic customization scenarios [Fix] Fixes layout constraints when changing the language for CCPA banners
[Fix] General improvement on resurfacing logic for any Legal Basis change on TCF Purposes
- Consent choice persistence** - Prevents repeated banner displays across geographies for users moving across different legal frameworks (i.e. in case of frequent travellers)
- Displaying the count of third-party vendors by category title
- Improved UX on language selector popup
- Enhancing the UI of First-layer Popups and Sheets for Optimal Display on iPads
- Aligned purposes descriptions/illustrations and vendor data with GVL translation
- Edge case when certain services, hidden by their respective categories, were visible"
- Minor issues on session restoration when using TCF
- Adds AC String into Updated Consent Event API
- Ensures accurate and proper display of large links on the Banner First and Second layer
- Deprecates
deviceStorage
field on TCF Vendor class - Field in CCPA Data
optedOut
is nullable
- Rework of session restore checks to prevent empty/bogus Controller ID
- Controller ID card replaced at the bottom when using Google Additional Consent
- Language selection menu will respect programmatic customization parameters
- Warning for Chartboost SDK when R8 is enabled
- Minor UI glitch where tab names were truncated when displaying the second layer in landscape mode
- Prevent fatal exceptions for a known iOS issue, more details here
- Solved for Webview continuity previously not restoring consents to Google Additional Technology Providers
- Solves the problem where the option 'Show non-IAB purposes only for EU users' incorrectly impacts users from specific regions
- Application of consents when configuring the CMP to 'Do Not Display' with Geolocation Rules
- Google Additional Consent Mode V2 - models were not exported and publicly available 😢
- Google Consent Mode V2 Support - Seamlessly integrate with the latest Google Consent Mode, ensuring enhanced privacy compliance and meeting Google requirements.
- Google Additional Consent Mode V2 - Integrate with the latest Google Additional Consent, allowing you to collect and signal additional consent for ad tech providers not covered by the IAB TCF V2.2.
- Display Number of Vendors for Each Purpose on TCF - Easily view the number of vendors associated with each purpose in the Transparency and Consent Framework.
- Chartboost SDK in Consent Mediation - Optimize revenue by effortlessly managing the Chartboost SDK within Usercentrics Consent Mediation.
- TCFUserDecisions API update - All properties have been changed from variables to constants. The adTechProviders field has been added which represent consents for Google Additional Consent Mode. On iOS this is a required argument, so if this is irrelevant for your configuration, just set an empty list, when needed.
- Location is only cached by the SDK for offline mode.
- Avoid fetching any image resource after the banner has been closed.
- Prevent Long Privacy Legal Links from Being Truncated.
- Enable Scaled Fonts resources when using Custom UI.
- Third-Party Vendors Count misalignment in some configurations.
- Fix the bug causing the banner to reappear for users outside the European Union, despite configurations being specifically set to enforce GDPR compliance exclusively for EU users.
- Update Link to Report Issues on Zendesk.
-
Accessibility: Various issues have been addressed to enhance accessibility.
- Resolved banner compatibility issues with iOS VoiceOver.
- Resolved banner compatibility issues with Android TalkBack.
- Adjusted font sizes to comply with Accessibility requirements on both iOS and Android.
-
Added Ukrainian support language for TCF.
- Fixed the issue of not disclosing the setting "showCloseButton" has been addressed, preventing errors on Android.
- Fixed the crash on Android when passing an invalid controller id to restore the user session.
- Fixed The issue of the remote variant configuration not being used in first layer on Unity.
- 🚀 Full TCF 2.2 Support: As the industry shifts to TCF 2.2 (deadline: November 20, 2024), we are pleased to announce that SDK Version 2.9.0 now offers comprehensive support for this new industry standard.
⚠️ Important Note: Please be aware that this version is incompatible with TCF 2.0. Before upgrading to V 2.9.0, ensure a smooth transition to TCF 2.2 following the guidelines:
How to migrate from TCF v2.0 to TCF v2.2
- Updated Global Vendor List: We've transitioned to Global Vendor List v3 to align with industry standards.
- Legitimate Interest: To enhance transparency and privacy, purposes 3 to 6 have been removed, and purpose 11 has been introduced.
- Improved User Interface: We've made enhancements to the banner's second layer for a better user experience.
- Vendor Count Display: Users can now easily see the total count of IAB and non-IAB vendors.
- New Resurface Requirements: We've implemented new resurfacing requirements to keep your CMP compliant with the latest standards.
- TCF performance is now improved for settings with a huge amount of vendors
- UI small issues
- Solved general issues
- UI small issues on iOS (labels being cut, when they have long values)
- Fixed Deprecated DPS being shown
- Solved general issues
- [Unity] New GetCmpData API, check out the documentation here 🎉
- [Flutter and RN] Track API is live, check out the documentation here 🎉
- Enabled support for Hide Data Processing Services
- Added a "default" label into consent history entries, when it was given implicitly
- Consent mediation improvements
- Solved general issues
onConsentUpdated
event is not triggered after initialization- Banner reshow logic
- Boolean values sent via consent mediation to Adjust
- Apple TV labels being cut off
- Android TV issue when showing TCF on 2nd layer
- Solved general issues
- Support US Frameworks
- Remove deprecated method (showFirstLayer(layout: UsercetricsLayout))
- Mediation issues
- Solved general issues
- Supporting Limited Fields in Service Descriptions.
- Improvements in accessibility.
- Custom UI objects are getting the latest values.
- Solve general issues
-
Solve general issues.
-
Solve issue when switches were showing the wrong value on iOS when pressing too many times repeatedly.
-
Solve issue when toggles were showing on second layer even though they were disabled.
-
Solve issue where the first time the app was initialized using the method getTCString, the TCString comes out empty.
-
Fixed issue where DPSs accepted by default did not appear as accepted when opening second layer.
- Enabling PUR customisation properties
- Improvements to stability and exception handling to solve edge cases.
- Solve issue with third party SDKs being included in POM file.
- UI improvements to CCPA Banner solution
- Several improvements on Consent Mediation
- Add support for Adjust and Crashlytics.
- Add support for Custom DPSs.
- Stability improvements and bug fixes.
- [TCF] Performance improvement.
- Stability improvements and bug fixes.
- Add a property to disable the system back button in the first layer
- First Layer Banner has met accessibility requirements 🎉
- Remotely configure your banner layout option of your banner. This feature is only for "App Advanced" Configurations. Please contact your CSM if you would like to get access to this feature.
- Solve CCPA issue with toggle initial value.
- Stability improvements and bug fixes
- Major improvements to main thread use.
- [Android] Resolve NPE crash happening in edge cases.
- Stability improvements.
- Major improvements to main thread use.
- [Android] Resolve NPE crash happening in edge cases.
- Stability improvements.
- [A/B Testing] With this release, you will now be able to create your own A/B Testing when showing the banner to your users. Check our exclusive page on how to achieve this.
- General bug fixes.
- [iOS] Support dynamic colors.
- General bug fixes.
- Huge performance improvement.
- [Compliance] You may now enable a close button in the First Layer, to "Continue without accepting".
- Improve legal link customization via our Programmatic API.
- Upgrade Error logs to help you debug the SDK's behaviour.
- [TCF 2.0] Solve issue where shouldCollectConsent was always true.
- [Restore User Session][TCF] With this release, you will now be able to restore user sessions when using a TCF configuration. This feature however, needs to be enabled and approved. Please contact your Customer Success Manager for more information.
- API upgrades to improve performance and storage space usage.
- [TCF] Updates to TCF logic, for custom use cases.
- [iOS][Dark Mode] Solve issue where SDK was overwritting theme to always be "light".
- Improvements to solve "NullPointerException" and unknown origin crashes.
- [Dark Mode][Customization API] Support Dark Mode and create advanced banner customizations with our updated Customization API. 🌓
- [Beta][Consent Mediation] Automatically apply consent to 3rd party SDKs with our Consent Mediation feature. 🥳
- UI improvements to history section.
- Added additional customization options for TCF 2.0 banner.
- Solved stability issues.
- UI improvements to history section.
- Added additional customization options for TCF 2.0 banner.
- Solve thread freeze issue for edge case initialization flow.
- Solved stability issues.
- [Geolocation Rules] By initializing our SDK using the Rule Set ID, now you can have your geolocation rules being applied for your mobile app.
- [Custom UI] Since we display some fields using HTML, we are now exposing them using Spanned (Android) and NSMutableAttributedString.
- [Analytics] To help the integration process, we've created a feature section to further explain how to use Analytics with Custom UI.
- General bug fixes.
- Improve stability and performance issues.
* Fixes issues when parsing TCF String
* TCF String solved issue when signalling legitimate interests
* TCF String solved issue with encoding to shorten the length of the string
- [UI] Controller ID section was redesigned to have a better UX.
ccpaData
exposes the encodeduspString
.
- Improve stability and performance issues.
- General bug fixes.
- [iOS] Access to
rootViewController
depending on API version.
- [Customization] You now have full control over the appearance of the First & Second Layer via our Admin Interface Style options and our Programmatic API. We have updated and extended our Programmatic API to simplify banner customization.
- [UI] Legal links are now added to our the First Layer, and can be hidden or shown as desired via programmatic API.
- [CCPA] Consent button can now be customized via the Admin Interface.
- [API Update]
tcString
has been deprecated in favor oftcfData
. This method returns all neccessary data to be consumed related to TCF 2.0 framework. - [API Update]
tcfData
is now async to provide accurate results when actions are still pending to be reflected.
- Improve initialization flow for stability and avoid edge case crashes.
- You may now customize your call to actions: Accept, Deny, Save Buttons independently for First & Second Layer.
- Required updates for TCF 2.0 framework.
- Solve stability issues and bug fixes.
- Issue when showing TCF without any vendors.
- UI/UX improvements and fixes.
- [API Update]
shouldShowCMP
has been deprecated in favor ofshouldCollectConsent
. See Initializing the SDK - [Banner API v2] Banner API v1 is now discontinued and removed from the SDK. If you don't wish to upgrade, please stick to v2.0.3 to avoid unexpected behaviour. See the alert in the "Banner API V1" tab
- [Banner API v2] BannerSettings now requires a BannerFont object to pass a Bold and Regular font separately to apply for both layers. See Banner Settings
- [Demo App] You can now find a demo app in our documentation to test out your configuration before writing a single line of code. See Sample Apps.
- Updates to TCF 2.0 framework.
- Issue with position of logo on Second Layer is now solved.
- UI/UX improvements and fixes.
- [Banner API v2] A complete revamp of our banner API will enable you to have high customisation and versatility to build a end-user friendly consent banner. We can't wait for you to give it a try. For more details, see: Presenting the Banner.
- Add a Header Image to your banner.
- Have full control over the layour of your action buttons with Column, Row or Grid configurations.
- Launch the second layer directly.
- Landscape Mode support.
- You can now add a "More Information" link to your banner message to forward users to the 2nd Layer. Appearance > Settings > More Information Link in Banner Message. Then you will be able to add this link in the banner message text editor.
- [Usability] Collect consent only at a category level. Option available in your Admin Interface: Configure > Legal Specifications > Settings > Category Consent.
- [CNIL] "Continue wthout Accepting" feature is now supported. (French regulation)
- [Fonts] Admin Interface fonts are now deprecated for App. To enable custom fonts, please inject the font via banner API.
- [API] Expose user's consent history.
- [TCF 2.0] Adding support to actively inform users when vendors are sharing data outside a region.
- [CCPA] Improve API to facilitate compliance with new Banner API.
- [TCF 2.0] Minor design upgrades to improve usability.
- [iOS] Edge case with RestoreUserSession failing is now solved.
- [iOS] Issue with local and remote images losing quality is now solved.
- UI/UX improvements and fixes.
- Minor fix on UI related to consent toggles.
- Corner radius on iOS.
- Custom UI API.
- Initial version of the library.