@usercentrics/react-native-sdk 2.23.0 → 2.23.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +103 -22
  2. package/android/{build.gradle → build-legacy.gradle} +19 -2
  3. package/android/build.gradle.kts +76 -0
  4. package/android/gradle.properties +6 -2
  5. package/android/settings.gradle.kts +21 -0
  6. package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/RNUsercentricsModuleTest.kt +5 -5
  7. package/android/src/androidTest/java/com/usercentrics/reactnative/fake/FakePromise.kt +73 -0
  8. package/android/src/main/AndroidManifest.xml +1 -2
  9. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/RNUsercentricsModule.kt +34 -30
  10. package/android/src/main/java/com/usercentrics/reactnative/RNUsercentricsModuleSpec.kt +99 -0
  11. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/RNUsercentricsPackage.kt +3 -2
  12. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/ReactContextProvider.kt +1 -1
  13. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/ReactContextProviderImpl.kt +1 -1
  14. package/android/src/main/java/com/usercentrics/reactnative/UCRNFlag.kt +4 -0
  15. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/api/UsercentricsProxy.kt +2 -2
  16. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/BannerFontExtensions.kt +1 -1
  17. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/BannerSettingsExtensions.kt +5 -4
  18. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/CCPADataExtensions.kt +1 -1
  19. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/ConsentDisclosureSerializer.kt +1 -1
  20. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/ReadableMapExtensions.kt +1 -1
  21. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/TCFDataExtensions.kt +1 -1
  22. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/UserDecisionExtensions.kt +20 -18
  23. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/UserOptionsExtensions.kt +1 -1
  24. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/UsercentricsCMPDataExtensions.kt +1 -1
  25. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/UsercentricsConsentUserResponseExtensions.kt +1 -1
  26. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/UsercentricsReadyStatusExtensions.kt +1 -1
  27. package/android/src/main/java/com/usercentrics/{reactnativeusercentrics → reactnative}/extensions/UsercentricsServiceConsentExtensions.kt +1 -1
  28. package/android/src/test/java/com/usercentrics/reactnative/RNUsercentricsModuleTest.kt +159 -0
  29. package/android/src/test/java/com/usercentrics/reactnative/fake/FakePromise.kt +73 -0
  30. package/ios/Extensions/BannerSettings+Dict.swift +1 -0
  31. package/ios/Extensions/UIColor+Extensions.swift +1 -1
  32. package/ios/Extensions/UIImage+UsercentricsLogoDict.swift +1 -0
  33. package/ios/RNUsercentricsModule.swift +25 -1
  34. package/ios/RNUsercentricsModuleSpec.h +103 -0
  35. package/lib/NativeUsercentrics.d.ts +30 -0
  36. package/lib/NativeUsercentrics.js +10 -0
  37. package/lib/NativeUsercentrics.js.map +1 -0
  38. package/lib/Usercentrics.d.ts +8 -8
  39. package/lib/Usercentrics.js +3 -1
  40. package/lib/Usercentrics.js.map +1 -1
  41. package/package.json +98 -79
  42. package/react-native-usercentrics.podspec +26 -3
  43. package/CHANGELOG.md +0 -822
  44. package/android/settings.gradle +0 -1
  45. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/fake/FakePromise.kt +0 -67
  46. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/UCRNFlag.kt +0 -4
  47. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/api/FakeUsercentricsProxy.kt +0 -0
  48. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/mock/GetCMPDataMock.kt +0 -0
  49. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/mock/GetConsentsMock.kt +0 -0
  50. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/mock/GetTCFDataMock.kt +0 -0
  51. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/mock/GetUSPDataMock.kt +0 -0
  52. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/mock/GetUserSessionDataMock.kt +0 -0
  53. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/mock/ReactContextProviderMock.kt +0 -0
  54. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/mock/SaveDecisionsForTCFMock.kt +0 -0
  55. /package/android/src/androidTest/java/com/usercentrics/{reactnativemodule → reactnative}/mock/SaveDecisionsMock.kt +0 -0
  56. /package/ios/{RNUsercentricsModule.m → RNUsercentricsModule.mm} +0 -0
package/CHANGELOG.md DELETED
@@ -1,822 +0,0 @@
1
- [Release Notes](https://docs.usercentrics.com/cmp_in_app_sdk/latest/about/history/)
2
-
3
- ### 2.23.0 - Sep 15, 2025
4
- ## Android/iOS Bug Fixes:
5
- * Fixed bugs related to Google Consent Strings on DenyAll, ensuring correct consent handling
6
- * Resolved geolocation issue reported in version 2.22.2
7
- * Fixed accessibility contrast issues for improved usability
8
-
9
- ### 2.22.2 - Aug 7, 2025
10
- ## Feature - Consent Mediation
11
- * Added support for AirBridge SDK
12
- * Add GDPR API AcceptAll / DenyAll / SaveDecisions for Unity
13
- * Fixed dependency download issue in versions 2.22.0 and 2.22.1.
14
- * Added missing Proguard rules for Airbridge in versions 2.22.0 and 2.22.1.
15
- ## Android/iOS Bug Fixes:
16
- * Improvements to geolocation handling
17
- * Adjustments to DAU tracking logic
18
-
19
- ### 2.21.1 - Jul 25, 2025
20
- ## Improvement
21
- ## Android/iOS Bug Fixes:
22
- * Fixed crashes related to the UI
23
-
24
- ### 2.21.0 - Jun 18, 2025
25
- ## Feature - Consent Mediation
26
- * Added support for AppsFlyer SDK
27
- * Added support for Singular SDK
28
- ## Improvement - Exposing `category` field in `UsercentricsServiceConsent` object
29
- ## iOS Bug Fixes:
30
- * Accessibility improvements with VoiceOver and keyboard focus
31
- * Fixed button sizes when expanding font size
32
-
33
- ### 2.20.3 - May 30, 2025
34
- ## Improvement: Accessibility Enhancements
35
- * iOS: Enhanced VoiceOver support when expanding cards across all compliance frameworks.
36
-
37
- ### 2.20.2 - May 27, 2025
38
- ## Improvement: Accessibility Enhancements
39
- * Android & iOS: Implemented general accessibility improvements, including better color contrast, adjustments to touch target sizes, improved focus order, and fixes to prevent keyboard traps enhancing compatibility with assistive technologies and overall usability.
40
-
41
- ### 2.20.1 - May 7, 2025
42
- ## Improvements: Accessibility Enhancements - Enhanced accessibility features to provide a more inclusive user experience.
43
- * Android Bug Fixes:
44
- * Ensured minimum touch target size of 24dp for interactive elements.
45
- * Added status messages to announce additional content for screen readers.
46
- * iOS Bug Fixes:
47
- * Added status messages to announce additional content for screen readers.
48
- * Fixed dynamic type behavior to correctly resize text when accessibility text size is increased.
49
-
50
- ### 2.20.0 - April 16, 2025
51
- ## Feature
52
- * TCF Updates - TCF library updated to version 1.5.15 to resolve LI signaling ambiguity for vendors with Purposes under consent and Special Purposes
53
- * Implemented LI signalling to vendors only registered for Special Purposes with TCF Technical specifications
54
- * Added support for new languages: Albanian (SQ), Chinese Traditional (ZH-HANT), Georgian (KA), Hindi (HI), Thai (TH), Vietnamese (VI)
55
-
56
- ### 2.19.0 - March 24, 2025
57
-
58
- ## Improvements
59
- * Resolved an SDK cache issue that was causing the banner to display an inconsistent UI.
60
- * Accessibility features for a better user experience.
61
-
62
- ### 2.18.9 - February 27, 2025
63
-
64
- ## Fixes
65
- * Apple TV issue where focus would be lost when a cell contained a long description label.
66
- * Restore User Session issue where resurfacing did not occur when switching sessions between users.
67
-
68
- ### 2.18.6 - February 05, 2025
69
-
70
- ## Fixes
71
- * An error occurring when trying to migrate from version 7 to 8.
72
- * Issue causing SDK initialization to fail when using a specific version with Google's ATPs disabled.
73
-
74
- ## Improvements
75
- * iOS - Enhanced accessibility by increasing the contrast of the focus indicator.
76
- * Flutter - Exposing the stack trace when SDK initialization fails.
77
-
78
- ### 2.18.5 - January 23, 2025
79
-
80
- ## Fixes
81
- * Issue causing a temporary unstable SDK state when calling the `clearUserSession()` API
82
-
83
- ## Android Bug Fixes
84
- * Memory leak that occurred when displaying the banner's First Layer
85
-
86
- ## iOS Bug Fixes
87
- * Accessibility by addressing instances where multiple links had identical link text
88
-
89
- ### 2.18.4 - January 07, 2025
90
-
91
- ## Android Bug Fixes
92
-
93
- * Inconsistencies when showing the banner using the `windowFullscreen` parameter
94
-
95
- ## Fixes
96
-
97
- * Google Consent Mode edge case when setting `analytics_storage` flag
98
- * Clear User Session edge case when using caching certain requests
99
-
100
- ### 2.18.3 - December 11, 2024
101
-
102
- ## Features
103
- * Removed support for Adjust version 4.
104
-
105
- ## Improvements
106
- * Flutter: Exposed `legalBasis` field in `UsercentricsCMPData` class.
107
-
108
- ## Android Bug Fixes:
109
- * Full-screen mode was not properly applied on certain devices, causing the banner to be displayed within the safe area.
110
- * Banner content was hidden by the selfie camera when full-screen mode was activated.
111
-
112
- ### 2.18.2 - November 27, 2024
113
-
114
- ## Features
115
- * Added support for manual resurface in the mobile SDK, which can be trigged through Admin Interface.
116
-
117
- ## Improvements
118
- * Exposed `readLess` label in `UsercentricsLabels` object
119
-
120
- ### 2.18.1 - November 20, 2024
121
-
122
- ## Improvements
123
- * Caching solutions - Improved our cache solution to provide faster initializations and better UX
124
-
125
- ### 2.18.0 - November 14, 2024
126
-
127
- ## Fixes
128
- * [Fix] Crash when attempting to restore user session with controller id that only has TCF component
129
-
130
- ## Android Bug Fix:
131
- * [Fix] Fixed issues related to dismissing banners in inactive activities.
132
-
133
- ### 2.17.3 - October 17, 2024
134
-
135
- ## Features
136
- * Added support for right-to-left (RTL) languages in our SDK for enhanced localization and global accessibility.
137
-
138
- ## Fixes
139
- * General fixes and performance improvements
140
-
141
- ### 2.17.2 - October 1, 2024
142
-
143
- ## Improvements
144
- * Update to improve compatibility and ensure smoother performance with Google Consent Mode
145
-
146
- ### 2.17.1 - September 25, 2024
147
-
148
- ## Improvements
149
- * Update to improve compatibility and ensure smoother performance with Google Consent Mode
150
-
151
- ### 2.17.0 - September 18, 2024
152
-
153
- ## Improvements
154
- * TCF V5 - Updated to new TCF Policy version
155
- * Updated TCF banner second's layer to reflect the latest addition of Special Purpose 3
156
- * Updated TCF banner second's layer to include information related to the CMP’s maximum device storage duration
157
- * Adjust Consent Mediation
158
- * Adding support for new Adjust version 5
159
- * Adjust version 4 will be supported until October 31, 2024
160
- ## iOS Bug Fixes
161
- * ironSource Consent Mediation for CCPA not being applied
162
- * HTML text not being rendered correctly
163
-
164
- ### 2.16.0 - September 4, 2024
165
-
166
- ## Features
167
-
168
- * 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](https://usercentrics.com/docs/apps/api/core-api/#usercentricsoptions)
169
-
170
- ### 2.15.6 - August 14, 2024
171
-
172
- ## Other Fixes
173
-
174
- * Toggle visibility of Deny Button on Second Layer for TVs
175
- * Stability improvements when initializing the SDK
176
-
177
- ### 2.15.5 - July 31, 2024
178
-
179
- ## Improvements
180
-
181
- * Google Consent Mode: Enhanced implementation when integrating with the TCF framework
182
- * Deprecating `copy` field from `UsercentricsLabels`
183
-
184
- ## Other Fixes
185
-
186
- * Crash when invoking `showSecondLayer(...)` method without arguments
187
- * Adding missing labels in `UsercentrisLabels` object
188
-
189
- ### 2.15.4 - July 17, 2024
190
-
191
- ## Other Fixes
192
-
193
- * Rare crash when initializing the SDK with TCF configuration
194
- * Unity Ads SDK Mediation adjusts
195
-
196
- ### 2.15.3 - June 24, 2024
197
-
198
- ## React Native Bug Fix
199
-
200
- **[Fix]** Services categories description was returning a stringify object instead of the actual description
201
-
202
- ### 2.15.2 - June 12, 2024
203
-
204
- ## Improvements
205
-
206
- * Firebase Consent Mediation: Improved integration with its flags
207
-
208
- ## Android Bug Fix
209
-
210
- * Fixed issues related to displaying banners in inactive activities
211
-
212
- ## Other Fixes
213
-
214
- * Addressed sporadic crashes during TCF banner initializations on iOS.
215
- * Enhanced code efficiency for smoother consent banner displays.
216
-
217
- ### 2.15.1 - May 29, 2024
218
-
219
- ## Improvements
220
-
221
- * Consent mediation - Specific implementation for [Firebase Analytics and Advertising](https://usercentrics.com/docs/apps/features/google-consent-mode/) SDK
222
- * Reset method deprecated for the SDK, React Native, Flutter and Unity
223
- * Added support for new TCF languages
224
- * Change TCF resurface period: from 13 months to 390 days
225
-
226
- ## iOS Bug Fixes
227
-
228
- * UI improvement
229
-
230
- ## General Fixes
231
-
232
- * Some DPSs had the cookie storage wrongly displayed
233
-
234
- ### 2.15.0 - April 25, 2024
235
-
236
- ## Improvements
237
-
238
- * Upgrade to latest Kotlin version 1.9.23
239
- * Officially changed Android SDK minimum version to API 21
240
- * Releasing iOS SDKs that supports manual linkage
241
- * General improvements on Google Consent Mode
242
- * Apple Privacy Manifest** - Added new requirements to support new compliance rules, check them out [here](http://usercentrics.com/docs/apps/help/privacy_manifest/)
243
-
244
- ## iOS Bug Fixes
245
-
246
- * Crashes on Xcode 15.2 when using new Apple's libraries linkage mechanism
247
- * IronSource Consent Mediation integration tweaks to support their latest release
248
-
249
- ## Other Fixes
250
-
251
- * Links not supported on banner message customizations were being displayed
252
- * Controller ID card were not visible in certain conditions when Google Additional Providers were not present
253
- * GDPR Banner was reappearing after a very specific scenario that changed the rule if it should be resurfaced or not
254
-
255
- ### 2.14.2 - April 10, 2024
256
-
257
- ## Improvements
258
-
259
- * **Supports Read More on Banner Message** - Adds support to have a "read more" button on banner message displayed on the First Layer
260
-
261
- ## iOS Bug Fixes
262
-
263
- * Sporadically crashes on `getUserSessionData` API
264
-
265
- ## Android Bug Fixes
266
-
267
- * Sporadically crashes on TCF banner initializations
268
-
269
- ## Other Fixes
270
-
271
- * Stability improvements
272
-
273
- ### 2.14.0 - April 4, 2024
274
-
275
- ## Features
276
-
277
- * **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
278
-
279
- ## Improvements
280
-
281
- * Documentation about Consent Mediation on Flutter and React Native
282
- * Support for Android Gradle Plugin 8 for Flutter
283
- * Reset API will be deprecated in future versions
284
-
285
- ## iOS Bug Fixes
286
-
287
- * UI improvements on spacing between labels
288
-
289
- ### 2.13.2 - March 13, 2024
290
-
291
- ## Features
292
-
293
- **Clear User Session** - Introducing a new API designed to simplify the process of clearing user sessions
294
-
295
- ## Improvements
296
-
297
- **Google Consent Mode Granular Choices** - Enhances integration with Google SDKs by updating to the latest changes.
298
-
299
- **Adjust Granular Consent** - By Using Consent Mediation, we have fully integrated with Adjust SDK updates associated with the DMA
300
-
301
- ## iOS Bug Fixes
302
-
303
- **[Fix]** Adjusts in landscape mode where labels were not fully aligned with other elements of the screen
304
- **[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
305
-
306
- ## Other Fixes
307
-
308
- **[Fix]** Removes deprecated field TCFVendor::deviceStorage
309
- **[Fix]** In certain scenarios, the 'Save Settings' button color was not customizable
310
-
311
- ### 2.13.0 - February 29, 2024
312
-
313
- ## Features
314
-
315
- **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](integration/initialize.md#initialize-usercentrics)
316
-
317
- ## Improvements
318
-
319
- **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
320
- **New TCF 2.2 Stacks** - Added support for Stacks 44 and 45
321
-
322
- ## Android Bug Fixes
323
-
324
- **[Warning]** ⚠️Support for versions lower than Android 5.0 (API Level 20) is planned to be removed in releases starting from end of March/24
325
- **[Fix]** Fully removes support for TLS 1.2 in Android versions lower than 5.0 (API Level 20)
326
-
327
- ## iOS Bug Fixes
328
-
329
- **[Fix]** Banner was not correctly rendered given some specific programmatic customization scenarios
330
- **[Fix]** Fixes layout constraints when changing the language for CCPA banners
331
-
332
- ## Other Fixes
333
-
334
- **[Fix]** General improvement on resurfacing logic for any Legal Basis change on TCF Purposes
335
-
336
- ### 2.12.0 - February 15, 2024
337
-
338
- ## Features
339
-
340
- * Consent choice persistence** - Prevents repeated banner displays across geographies for users moving across different legal frameworks (i.e. in case of frequent
341
- travellers)
342
-
343
- ## Improvements
344
-
345
- * Displaying the count of third-party vendors by category title
346
-
347
- ## Android Bug Fixes
348
-
349
- * Removes JVM Target ('1.8') compatibility annotation
350
- * Improved UX on language selector popup
351
-
352
- ## iOS Bug Fixes
353
-
354
- * Enhancing the UI of First-layer Popups and Sheets for Optimal Display on iPads
355
-
356
- ## Other Fixes
357
-
358
- * Aligned purposes descriptions/illustrations and vendor data with GVL translation
359
- * Edge case when certain services, hidden by their respective categories, were visible"
360
- * Minor issues on session restoration when using TCF
361
-
362
- ### 2.11.3 - January 25, 2024
363
-
364
- ## Improvements
365
-
366
- * Adds AC String into Updated Consent Event API
367
-
368
- ## Other Fixes
369
-
370
- * Ensures accurate and proper display of large links on the Banner First and Second layer
371
- * Deprecates deviceStorage field on TCF Vendor class
372
-
373
- ### 2.11.1 - January 10, 2024
374
-
375
- ## Improvements
376
-
377
- * Rework of session restore checks to prevent empty/bogus Controller ID
378
-
379
- ## Android Bug Fixes
380
-
381
- * Controller ID card replaced at the bottom when using Google Additional Consent
382
- * Language selection menu will respect programmatic customization parameters
383
- * Warning for Chartboost SDK when R8 is enabled
384
- * Minor UI glitch where tab names were truncated when displaying the second layer in landscape mode
385
-
386
- ## iOS Bug Fixes
387
-
388
- * Prevent fatal exceptions for a known iOS issue, more details [here](https://developer.apple.com/forums/thread/115405)
389
-
390
- ## Other Fixes
391
-
392
- * Solved for Webview continuity previously not restoring consents to Google Additional Technology Providers
393
- * Solves the problem where the option 'Show non-IAB purposes only for EU users' incorrectly impacts users from specific regions
394
- * Application of consents when configuring the CMP to 'Do Not Display' with Geolocation Rules
395
-
396
- ### 2.11.0 - December 22, 2023
397
-
398
- ## Features
399
-
400
- * Google Consent Mode V2 Support - Seamlessly integrate with the latest Google Consent Mode, ensuring enhanced privacy compliance and meeting Google requirements.
401
- * 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.
402
- * 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.
403
- * Chartboost SDK in Consent Mediation - Optimize revenue by effortlessly managing the Chartboost SDK within Usercentrics Consent Mediation.
404
-
405
- ## Improvements
406
-
407
- * 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.
408
- * Location is only cached by the SDK for offline mode.
409
-
410
- ## Android Resolved Issues
411
-
412
- * Avoid fetching any image resource after the banner has been closed.
413
-
414
- ## iOS Resolved Issues
415
-
416
- * Prevent Long Privacy Legal Links from Being Truncated.
417
- * Enable Scaled Fonts resources when using Custom UI.
418
-
419
- ## Other Resolved Issues
420
-
421
- * Third-Party Vendors Count misalignment in some configurations.
422
- * 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.
423
- * Update Link to Report Issues on Zendesk.
424
-
425
- ### 2.10.0 - November 16, 2023
426
-
427
- ## Improvements
428
-
429
- * Accessibility: Various issues have been addressed to enhance accessibility.
430
- * Resolved banner compatibility issues with iOS VoiceOver.
431
- * Resolved banner compatibility issues with Android TalkBack.
432
- * Adjusted font sizes to comply with Accessibility requirements on both iOS and Android.
433
-
434
- * Added Ukrainian support language for TCF.
435
-
436
- ## Resolved Issues
437
-
438
- * Fixed the issue of not disclosing the setting "showCloseButton" has been addressed, preventing errors on Android.
439
- * Fixed the crash on Android when passing an invalid controller id to restore the user session.
440
- * Fixed The issue of the remote variant configuration not being used in first layer on Unity.
441
-
442
- ### 2.9.0 - October 6, 2023
443
-
444
- ## Features
445
-
446
- * :rocket: **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.
447
- * :warning: **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:
448
-
449
- [How to migrate from TCF v2.0 to TCF v2.2](https://usercentrics.atlassian.net/wiki/spaces/SKB/pages/2668789801/How+to+migrate+from+TCF+v2.0+to+TCF+v2.2#\uD83D\uDCD8-Migration-instructions-for-TCF-v2.2)
450
-
451
- ## Key Changes and Enhancements:
452
-
453
- * Updated Global Vendor List: We've transitioned to Global Vendor List v3 to align with industry standards.
454
- * Legitimate Interest: To enhance transparency and privacy, purposes 3 to 6 have been removed, and purpose 11 has been introduced.
455
- * Improved User Interface: We've made enhancements to the banner's second layer for a better user experience.
456
- * Vendor Count Display: Users can now easily see the total count of IAB and non-IAB vendors.
457
- * New Resurface Requirements: We've implemented new resurfacing requirements to keep your CMP compliant with the latest standards.
458
-
459
- ### 2.8.4 - September 27, 2023
460
-
461
- ## Improvements
462
-
463
- * TCF performance is now improved for settings with a huge amount of vendors
464
-
465
- ## Resolved Issues
466
-
467
- * UI small issues
468
- * Solved general issues
469
-
470
- ### 2.8.3 - September 4, 2023
471
-
472
- ## Resolved Issues
473
-
474
- * UI small issues on iOS (labels being cut, when they have long values)
475
- * Fixed Deprecated DPS being shown
476
- * Solved general issues
477
-
478
- ### 2.8.2 - July 12, 2023
479
-
480
- ## Features
481
-
482
- * [Unity] New GetCmpData API, check out the documentation [here](https://docs.usercentrics.com/cmp_in_app_sdk/latest/unity/core-api/#get-cmp-data) :tada:
483
- * [Flutter and RN] Track API is live, check out the documentation [here](https://docs.usercentrics.com/cmp_in_app_sdk/latest/api/usercentrics-core/#track) :tada:
484
-
485
- ## Improvements
486
-
487
- * Enabled support for Hide Data Processing Services
488
- * Added a "default" label into consent history entries, when it was given implicitly
489
-
490
- ## Resolved Issues
491
-
492
- * Consent mediation improvements
493
- * Solved general issues
494
-
495
- ### 2.8.1 - June 9, 2023
496
-
497
- ## Improvements
498
-
499
- * `onConsentUpdated` event is not triggered after initialization
500
- * Banner reshow logic
501
-
502
- ## Resolved Issues
503
-
504
- * Boolean values sent via consent mediation to Adjust
505
- * Apple TV labels being cut off
506
- * Android TV issue when showing TCF on 2nd layer
507
- * Solved general issues
508
-
509
- ### 2.8.0 - May 8, 2023
510
-
511
- ## Features
512
-
513
- * Support US Frameworks
514
-
515
- ## Improvements
516
-
517
- * Remove deprecated method (showFirstLayer(layout: UsercetricsLayout))
518
-
519
- ## Resolved Issues
520
-
521
- * Mediation issues
522
- * Solved general issues
523
-
524
- ### 2.7.16
525
-
526
- ## Features
527
-
528
- * Supporting Limited Fields in Service Descriptions.
529
-
530
- ## Improvements
531
-
532
- * Improvements in accessibility.
533
- * Custom UI objects are getting the latest values.
534
-
535
- ## Resolved Issues
536
-
537
- * Solve general issues
538
-
539
- ### 2.7.15
540
-
541
- ## Resolved Issues
542
-
543
- * Solve general issues.
544
-
545
- * Solve issue when switches were showing the wrong value on iOS when pressing too many times repeatedly.
546
-
547
- * Solve issue when toggles were showing on second layer even though they were disabled.
548
-
549
- * Solve issue where the first time the app was initialized using the method getTCString, the TCString comes out empty.
550
-
551
- * Fixed issue where DPSs accepted by default did not appear as accepted when opening second layer.
552
-
553
- ### 2.7.13
554
-
555
- ## Features
556
-
557
- * Enabling PUR customisation properties
558
-
559
- ## Improvements
560
-
561
- * Improvements to stability and exception handling to solve edge cases.
562
-
563
- ## Resolved Issues
564
-
565
- * Solve issue with third party SDKs being included in POM file.
566
- * UI improvements to CCPA Banner solution
567
-
568
- ### 2.7.12
569
-
570
- ## Improvements
571
-
572
- * Several improvements on Consent Mediation
573
- * Add support for Adjust and Crashlytics.
574
- * Add support for Custom DPSs.
575
-
576
- ## Resolved Issues
577
-
578
- * Stability improvements and bug fixes.
579
-
580
- ### 2.7.10
581
-
582
- ## Improvements
583
-
584
- * [TCF] Performance improvement.
585
-
586
- ## Features
587
-
588
- * Stability improvements and bug fixes.
589
-
590
- ### 2.7.9
591
-
592
- ## Features
593
-
594
- * Add a property to disable the system back button in the first layer
595
-
596
- ### 2.7.8
597
-
598
- ## Features
599
-
600
- * First Layer Banner has met accessibility requirements :tada:
601
- * 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.
602
-
603
- ## Resolved Issues
604
-
605
- * Solve CCPA issue with toggle initial value.
606
- * Stability improvements and bug fixes
607
-
608
- ### 2.7.6
609
-
610
- ## Improvements
611
-
612
- * Major improvements to main thread use.
613
-
614
- ## Resolved Issues
615
-
616
- * [Android] Resolve NPE crash happening in edge cases.
617
- * Stability improvements.
618
-
619
- ### 2.7.5
620
-
621
- ## Improvements
622
-
623
- * Major improvements to main thread use.
624
-
625
- ## Resolved Issues
626
-
627
- * [Android] Resolve NPE crash happening in edge cases.
628
- * Stability improvements.
629
-
630
- # 2.7.4
631
-
632
- ## Features
633
-
634
- * **[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](https://docs.usercentrics.com/cmp_in_app_sdk/latest/features/ab-testing) on how to achieve this.
635
-
636
- ## Improvements
637
-
638
- * General bug fixes.
639
- * [iOS] Support dynamic colors.
640
-
641
- # 2.7.3
642
-
643
- ## Improvements
644
-
645
- * General bug fixes.
646
- * Huge performance improvement.
647
-
648
- # 2.7.2
649
-
650
- ## Features
651
-
652
- * **[Compliance]** You may now enable a close button in the First Layer, to "Continue without accepting".
653
-
654
- ## Improvements
655
-
656
- * Improve legal link customization via our Programmatic API.
657
- * Upgrade Error logs to help you debug the SDK's behaviour.
658
-
659
- ## Resolved Issues
660
-
661
- * [TCF 2.0] Solve issue where shouldCollectConsent was always true.
662
-
663
- # 2.7.1
664
-
665
- ## Features
666
-
667
- * **[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.
668
-
669
- ## Improvements
670
-
671
- * API upgrades to improve performance and storage space usage.
672
- * **[TCF]** Updates to TCF logic, for custom use cases.
673
-
674
- ## Resolved Issues
675
-
676
- * **[iOS][Dark Mode]** Solve issue where SDK was overwritting theme to always be "light".
677
- * Improvements to solve "NullPointerException" and unknown origin crashes.
678
-
679
- # 2.7.0
680
-
681
- ## Features
682
-
683
- - **[Dark Mode][Customization API]** Support Dark Mode and create advanced banner customizations with our updated [Customization API](https://docs.usercentrics.com/cmp_in_app_sdk/latest/collect_consent/usercentrics-ui/#programmatic-customization). :first_quarter_moon:
684
- - **[Beta][Consent Mediation]** Automatically apply consent to 3rd party SDKs with our [Consent Mediation](https://docs.usercentrics.com/cmp_in_app_sdk/latest/apply_consent/consent-mediation) feature. :partying_face:
685
- - UI improvements to history section.
686
- - Added additional customization options for TCF 2.0 banner.
687
-
688
- ## Resolved Issues
689
-
690
- - Solved stability issues.
691
-
692
- # 2.6.1
693
-
694
- ## Improvements
695
-
696
- - UI improvements to history section.
697
- - Added additional customization options for TCF 2.0 banner.
698
-
699
- ## Resolved Issues
700
-
701
- - Solve thread freeze issue for edge case initialization flow.
702
- - Solved stability issues.
703
-
704
- # 2.6.0
705
-
706
- ## Features
707
-
708
- - **[Geolocation Rules]** By initializing our SDK using the Rule Set ID, now you can have your geolocation rules being applied for your mobile app.
709
- - **[Custom UI]** Since we display some fields using HTML, we are now exposing them using Spanned (Android) and NSMutableAttributedString.
710
- - **[Analytics]** To help the integration process, we've created a feature section to further explain how to use Analytics with Custom UI.
711
-
712
- ## Resolved Issues
713
-
714
- - General bug fixes.
715
- - Improve stability and performance issues.
716
-
717
- # 2.5.3
718
-
719
- ## Resolved Issues
720
-
721
- * Fixes issues when parsing TCF String
722
-
723
- # 2.5.2
724
-
725
- ## Resolved Issues
726
-
727
- * TCF String solved issue when signalling legitimate interests
728
-
729
- # 2.5.1
730
-
731
- ## Resolved Issues
732
-
733
- * TCF String solved issue with encoding to shorten the length of the string
734
-
735
- # 2.5.0
736
-
737
- ## Features
738
-
739
- - **[UI]** Controller ID section was redesigned to have a better UX.
740
- - `CCPAData` exposes the encoded `uspString`.
741
-
742
- ## Improvements
743
-
744
- - Improve stability and performance issues.
745
-
746
- ## Resolved Issues
747
-
748
- - General bug fixes.
749
- - **[iOS]** Access to `rootViewController` depending on API version.
750
-
751
- # 2.4.0
752
-
753
- ## Features
754
-
755
- - **[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.
756
- - **[UI]** Legal links are now added to our the First Layer, and can be hidden or shown as desired via programmatic API.
757
- - **[CCPA]** Consent button can now be customized via the Admin Interface.
758
-
759
- ## Improvements
760
-
761
- - Improve initialization flow for stability and avoid edge case crashes.
762
-
763
- ## Resolved Issues
764
-
765
- - Solve stability issues and bug fixes.
766
-
767
- # 2.3.0
768
-
769
- ## Features
770
-
771
- - **[API Update]** `shouldShowCMP` has been deprecated in favor of `shouldCollectConsent`. See [Initializing the SDK](https://docs.usercentrics.com/cmp_in_app_sdk/latest/getting_started/initialize/#initializing-the-sdk)
772
- - **[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](https://docs.usercentrics.com/cmp_in_app_sdk/latest/collect_consent/present_cmp/)
773
- - **[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](https://docs.usercentrics.com/cmp_in_app_sdk/latest/collect_consent/customize_cmp/#banner-style-settings)
774
- - **[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](https://docs.usercentrics.com/cmp_in_app_sdk/latest/samples/ios-android-demos/).
775
-
776
- ## Improvements
777
-
778
- - Updates to TCF 2.0 framework.
779
-
780
- ## Resolved Issues
781
-
782
- - Issue with position of logo on Second Layer is now solved.
783
- - UI/UX improvements and fixes.
784
-
785
- # 2.2.1
786
-
787
- ## Features
788
-
789
- - **[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.
790
- - Add a Header Image to your banner.
791
- - Have full control over the layour of your action buttons with Column, Row or Grid configurations.
792
- - Launch the second layer directly.
793
- - Landscape Mode support.
794
- - 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.
795
- - **[Usability]** Collect consent only at a category level. Option available in your Admin Interface: Configure > Legal Specifications > Settings > Category Consent.
796
- - **[CNIL]** "Continue wthout Accepting" feature is now supported. (French regulation)
797
- - **[Fonts]** Admin Interface fonts are now deprecated for App. To enable custom fonts, please inject the font via banner API.
798
-
799
- ## Improvements
800
-
801
- - **[API]** Expose user's consent history.
802
- - **[TCF 2.0]** Adding support to actively inform users when vendors are sharing data outside a region.
803
- - **[CCPA]** Improve API to facilitate compliance with new Banner API.
804
-
805
- ## Resolved Issues
806
- - **[TCF 2.0]** Minor design upgrades to improve usability.
807
- - **[iOS]** Edge case with RestoreUserSession failing is now solved.
808
- - **[iOS]** Issue with local and remote images losing quality is now solved.
809
- - UI/UX improvements and fixes.
810
-
811
- # 2.0.3
812
-
813
- - Minor fix on UI related to consent toggles.
814
- - Corner radius on iOS.
815
-
816
- # 2.0.2
817
-
818
- - Custom UI API.
819
-
820
- # 2.0.1
821
-
822
- - Initial version of the library.