1.27.0 (November 2020)

Features :

  • Send TCF and Additional Consent information in API events

  • Optimize publisher restrictions encoding in Consent String

  • Modify additional data processing links color in purposes screen

Bug fixes :

  • Fix daysBeforeShowingAgain parameter preventing consents recollection unexpectedly

1.26.2 (November 2020)

Bug fixes :

  • Fix pageview API event sent when app is still in background

  • Update embedded proguard rules

1.26.1 (October 2020)

Features :

  • GVL update

  • Detailed additional data processing information

  • Remove TCFv1 storage keys when TCFv2 is enabled

Bug fixes :

  • Ensure that the legitimate interest status is correctly passed to Webviews in getJavaScriptForWebView

1.25.0 (October 2020)

Features :

  • Support for publisher restrictions

  • Improve SDK initialization time

  • Update notice default texts

  • Allow disabling TCF from config

  • Export javadoc

Bug fixes :

  • Dynamic buttons size in Preferences screen

  • Potential crash in purpose details screen

1.24.2 (September 2020)

Bug fixes :

  • After modifying purposes consent manually, it was not possible to save if a purpose was only available under legitimate interest.

1.24.0 (September 2020)

Features :

  • Support for user.ignoreConsentBefore parameter in config file, to force recollecting consent after a certain date

  • Added status accessors in Didomi class : getUserLegitimateInterestStatusForVendor, getUserLegitimateInterestStatusForPurpose, getUserLegitimateInterestStatusForVendorAndRequiredPurposes, getUserStatusForVendor

1.23.0 (September 2020)

Features :

  • Support for organization user ID: Didomi#setUser()

  • TCF v2: Do not display toggle for vendors with no consent or legitimate interest purpose

  • Do not display vendors with no associated purpose

Bug fixes :

  • Fix callback events PreferencesClickPurposeAgreeEvent, PreferencesClickPurposeDisagreeEvent, PreferencesClickVendorAgreeEvent, PreferencesClickVendorDisagreeEvent triggered several times when modifying purpose or vendor choices

  • Increase notice pop-up width

  • Do not display notice pop-up "Learn more" and "Accept" buttons on the same line if there is not enough space

  • Fix notice bottom banner "Accept" button not displayed correctly

1.22.2 (September 2020)

Bug fixes :

  • Prevent ConcurrentModificationException occurring from time to time when adding an EventListener

1.22.1 (September 2020)

Bug fixes :

  • Impossible to modify consent choices in Preferences screen when essential purposes are defined

1.22.0 (August 2020)


  • Updated IAB vendors list to 52.

1.21.1 (August 2020)

Bug fixes :

  • Fix consent string and other properties not stored in Shared Preferences on devices running an Android version lower than 7.0

1.21.0 (August 2020)

Features :

  • Added support for Google as a TCF vendor

Bug fixes :

  • Fixed alignment of the banner notice buttons

1.20.3 (August 2020)

Bug fixes :

  • Incorrect display of the notice buttons when texts are too long

  • Preferences screen validation buttons enabled too soon

  • Preferences screen "close" button displayed despite config parameters

1.20.2 (August 2020)

Bug fixes :

  • Fix value for SharedPreference "IABTCF_PolicyVersion"

1.20.1 (July 2020)

Bug fixes :

  • getUserConsentStatusForVendorAndRequiredPurposes was not returning the right status for google and other custom vendors.

  • Add missing purposes for custom vendors

1.20.0 (July 2020)


  • Additional data processing in Preferences

1.19.2 (July 2020)

Features :

  • Link to open vendors page from notice

Bug fixes :

  • Fix crash when using latest versions of play-services-ads

  • Prevent memory leak in onReady / onError functions

1.19.1 (July 2020)

Features :

  • "IAB TCF" tag on vendors list

Bug fixes :

  • Export Proguard rules with library

  • Consents were not sent in TCF v1 for vendors with only legitimate interest purposes

1.19.0 (July 2020)


  • Notice configuration by ID

1.18.0 (July 2020)


  • IAB TCF v2 initial support

1.17.1 (July 2020)

Bug fixes:

  • Fix interface issue at build time with RMSwitch dependency

1.17.0 (June 2020)


  • Pass consent to Webviews or Chrome Custom Tabs via query-string

1.16.0 (June 2020)


  • Do not pre-check vendors in Preferences

1.15.0 (June 2020)


  • Allow setting the log level through setLogLevel

1.14.1 (June 2020)


  • showPreferences has been improved, requiring an AppCompactActivity and allowing to select which view should open (purposes or vendors)

1.13.0 (May 2020)

Bug fixes:

  • Ensure that the SDK is never initialized more than once even if Didomi.getInstance().initialize() is called multiple times.

  • Fixed a crash caused by a race condition that could happen when an activity is destroyed with finishActivity or finishAffinity and setupUI is called before the activity is fully destroyed by Android

1.12.1 (May 2020)


  • Improved compatibility with dark themes.

1.11.0 (March 2020)


  • Updated Global Vendor List to version 192.

1.10.11 (February 2020)

Bug fixes:

  • Better protect Didomi SDK against null Fragment Managers

1.10.10 (February 2020)

Bug fixes:

  • Background was displayed in a dark color on some views when device and app had dark mode enabled which made it difficult to read dark text.

1.10.9 (February 2020)


  • Added Didomi.notice.hide(); to the JavaScript code that gets returned by method getJavaScriptForWebView. This means that the notice view on the web app that's loaded on the native app will be hidden automatically when injecting the JavaScript code returned by this method.

1.10.7 (January 2020)

Bug fixes:

  • The privacy policy link for each vendor on the Vendors view was picking up the color from the app theme which in some cases could result in white text displayed on a white background.

1.10.5 (January 2020)


  • Updated Spanish and Lithuanian translations.

Bug fixes:

  • The Learn more button did not have the right padding.

  • The description texts for each purpose and vendor were picking up the color from the app theme which in some cases could result in white text displayed on a white background.

1.10.1 (Dec 2019)


  • Updated getTranslatedText method to get translated text from multiple sources

  • Created new method updateSelectedLanguage method that allows app developers to change the language of the Didomi SDK.

  • Added the ability to pass a language code when calling the initialize method. This language code will be used to set the selected language.

Bug fixes:

  • The save button in the purposes view was not being enabled property in some cases when the user had previously saved their preferences using an old list of purposes.

1.9.0 (Nov 2019)

Bug fixes:

  • LeakCanary was reporting a memory leak related to Fragment Managers which was potentially caused by a race condition between the Garbage Collector and LeakCanary (potentially a false positive).

1.8.12 (Nov 2019)


  • Updated the way API events are sampled to be based on user ID rather than on a random number.

1.8.11 (Oct 2019)


  • Introduced ui.action type for events sent to the API for tracking the interactions of the user with the consent UI. Actions added: preferences.shownpurposes, preferences.shownvendors, preferences.purposechanged and preferences.vendorchanged.

1.8.10 (Oct 2019)

Bug fixes:

  • When displayed as a banner, the consent notice was hiding in landscape orientation. The user would have to swipe up to bring back the notice.

1.8.9 (Oct 2019)

Bug fixes:

  • When the colorControlHighlight property was being set in the app theme, the purpose switches were taking that color as their background color.

1.8.8 (Oct 2019)

Bug fixes:

  • When the notice was displayed as a banner and the text was long, the bottom buttons wouldn't display on small screens.

1.8.7 (Jul 2019)

Bug fixes:

  • Some mapping keys related to the getText and getTranslatedText methods were not matching the JSON properties of the preferences and notice properties.

1.8.6 (Jul 2019)


  • Updated IAB vendors list to 155.

  • Added the ability to provide translatable texts through the texts property in the didomi_config.json file that can be used when creating a custom notice.

1.8.5 (Jul 2019)


  • Added the ability to block/disable the Agree to all and Disable to all buttons by providing the preferences.disableButtonsUntilScroll flag and setting it to true.

1.8.4 (Jul 2019)

Bug fixes:

  • The consent notice was not behaving properly when the device was rotated.

1.8.3 (Jun 2019)

Bug fixes:

  • Event HideNoticeEvent was not triggered as required in some cases.

1.8.2 (Jun 2019)

Bug fixes:

  • The Console generates custom purpose IDs within [A-Za-z0-9-_] and SDKs only allowed [a-z0-9-_]

1.8.1 (May 2019)


  • Exposed showPreferences(AppCompatActivity activity) method to allow the display of the Preferences view from an activity other than the one used with the setupUI method.

1.8.0 (May 2019)

Breaking change

This release adds an exception that will be thrown by those public methods that must be called only once the Didomi SDK is ready. The recommended way to handle this exception is by passing a lambda expression to the `onReady` method where the corresponding method is called.


  • Added the DidomiNotReadyException to those methods that should only be called once the Didomi SDK is ready.

1.7.2 (May 2019)


  • Update IAB vendors list (version 146)

1.7.1 (May 2019)

Bug fixes:

  • Popup notice was being dismissed when the device back button was pressed.

  • SDK was crashing the app when 1) an SDK fragment (notice, preferences, etc.) was left open and the app was sent to the background for long enough to be killed by the OS and 2) the app was resumed on that fragment.

1.7.0 (May 2019)


1.6.0 (Apr 2019)


  • Add the possibility to get the configuration remotely from the Didomi console

If you are coming from a previous version and want to enable the remote Didomi configuration created from the console, please add false as a new parameter in your initialize function. See documentation.

1.5.0 (Apr 2019)


1.4.4 (Mar 2019)

Bug fixes:

  • java.util.ConcurrentModificationException was thrown when adding event listeners inside the onReady callback.

  • Not availability of Advertising ID was causing issues. Now we use a fallback identifier when Advertising ID is not available.

1.4.3 (Mar 2019)

Bug fixes:

  • There was a race condition when registering SDK events that in some edge cases could potentially crash the app.

  • The SDK was using the current activity on fragments instead of the fragments themselves to retain the view models which in some edge cases could potentially crash the app.

1.4.2 (Feb 2019)


  • Exposing shouldConsentBeCollected method used to allow developers to check if consent should be collected or not.

1.4.1 (Feb 2019)

Bug fixes:

  • App was crashing in some edge cases when user minimised the app right before the consent notice was displayed.

1.4.0 (Jan 2019)


Bug fixes:

  • Text scrolled in the middle on the Preferences pop-in.

  • Preferences pop-in opens twice.

  • Preferences pop-in closed when clicking on back button and the "X" button was disabled.

  • Vendor switch color was not different from the switches on the Purposes view.

1.3.0 (Jan 2019)


  • Supports the 24 European languages

  • Number of days before recollecting consent option in the configuration tag

Bug fixes:

  • Fixed some UI issues

1.2.2 (Dec 2018)

Bug fixes:

  • Translate the "View Privacy Policy" link on the vendors list

  • Fixed potential issue around macros and the way they get replaced in the content

1.2.1 (Nov 2018)

Bug fixes:

  • Default texts format used different font size/weight across languages

  • Remove VendorRepository and ApiEventsRepository from the public API

  • Correctly load purposes and vendors statuses in the Preferences popup after consent has been given

  • Show the Save button when the Preferences popup is open after consent has been given

1.2.0 (Nov 2018)


  • Custom purposes

  • Map custom vendor to IAB ID

  • Expose getUserConsentStatusForPurpose and getUserConsentStatusForVendorAndRequiredPurposes in the public API

  • Ability to customize texts in the preferences popup

Bug fixes:

  • Translation issues on purposes and vendors

  • Do not load cached config if remote config URL is null/empty

1.1.0 (Nov 2018)


  • Load app config (didomi_config.json) from a remote URL

  • IABConsent_SubjectToGDPR shared preferences key for the IAB spec to indicate whether the user is subject to GDPR or not

Bug fixes:

  • Expandable info on vendors would not expand

  • Remove the app name from the User-Agent and replace it with "Didomi SDK/[SDK version]"

1.0.0 (Oct 2018)

Initial version.