Native SDK (iOS & tvOS) Changelog

In this document, you will see the changelog of the Native SDK (iOS & tvOS) per release.

202405.2.0

Common

Added

  • Adding support to replace the [VENDOR_NUMBER] with values for banner additional description, DBP description, Preference Center description for both mobile and CTV.
  • Any Links with special characters are not tappable on iOS/tvOS 16.x or lower and on tvOS, the QR code Images are not getting generated.
    • So we are now handling this scenario by performing percent encoding on the URLs with special characters so that they can be opened in Safari View on iOS and QR code images can be successfully generated on tvOS.

iOS

Fixed

  • Fixed an UI issue at vendor list screen where vendor segmented control title was getting truncated for large text.
  • Fixing accessibility issue where the save consent buttons are not resizing based on the accessibility text size increase. Previously the height of these buttons was fixed, we are now setting a minimum height on these buttons and letting the buttons grow based on the text and its size. Also we are removing the hardcoded height of table view containing the TItle and description on banner UI and setting a minimum height so that the view adapts accordingly.

iOS

Added

  • Introducing a new text field called Data Subject Identifier Type to Settings UI in the demo application.
  • Any text entered here will be assigned to the identfierType associated with the OTProfileSyncParams.

tvOS

Added

  • Adding support for Right to Left for Banner UI on tvOS.

202405.1.0

Common

  • Added support to recompute GPP String and update Section ID when TC String get expired.
    • When moving IAB to Non-IAB template.
      • TC String will remove from GPP String.
      • IAB Section ID(2) will remove from header section.
    • When moving Non-IAB to IAB template:
      • Saved IAB Data will reset to default as per consent model.
      • Default TC String will update into GPP String.
      • Banner will reappear.

Added

  • Added support to send consent string in consent payload. We send either GPP if available for Non-IAB templates or TC String if IAB template in payload now. We do not send TC String separately now as done previously.
  • Introducing vendor count text for IAB Special Features, IAB Features and IAB Special Purposes.
    • Moving forward we will be displaying the vendor count text for these purposes based on the text coming down as part of the server response for the respective text keys.

iOS

Added

  • Introducing the ability realign the consent saving buttons (Accept All, Reject All and Show Preferences).
    • We can now rearrange the order in which these are displayed on Preference Center UI on the admin console and the same will reflect on the mobile SDK as well.
    • Preference Center Buttons above the purposes will now be vertically aligned.
    • All three buttons (Accept All, Reject All and Confirm My Choices) can now be placed above or below the purposes.

Fixed

  • Fixing an UI issue where Policy Link is not aligned with Title and Description text on preference center UI. We are making sure that we remove the default padding set for a UITextView (Title and Description on Preference Center). This will make sure that Title, Description and Policy Link are aligned as Policy link is a UIButton and it does not have a default padding set.

tvOS

Added

  • Added support to show close or CNIL button at preference center UI as per Admin UI configuration.


202404.1.0

Common

Added

  • Added support to have a IAB key in common storage when GCM is enaled or disabled.
    • In IAB template if GCM is enabled, IABTCF_EnableAdvertiserConsentMode is set to 1.
    • In IAB template if GCM is disabled, IABTCF_EnableAdvertiserConsentMode is set to 0.
    • In NON-IAB template, this key is not availabe in common storage.
  • Removed forceRename parameter added for renameProfile public method unintentionally.

iOS

Added

  • Adding support for buttons to be re ordered on Banner UI.
    • We have now added the capability to rearrange and order the Accept All, Reject All and Show Preferences button on Banner UI.
    • At the template level on admin console customers can make this change and the positions will be coming down to the Mobile SDK and reflected in the UI.
    • If no position customization is done, we will fall back to the default order of Accept All, Reject All and Show Preferences respectively.

Fixed

  • Fixed SDKList UI issue.
    • Alignment of SDK description is left and right respectively for LTL and RTL respectively. Now we dont in herit alignment from PC screen for description.
    • Filter screen check marks are now taking text color only.
  • Fixed an UI issue at banner screen where List of Partners button text alignment was not honoring admin configuration.
  • Fixed an UI issue at ATT Pre and Post screen UI where screen was flickering in case of adding html reach text for title or description.

tvOS

Added

  • Customized default focus behavior where focus was moving to exactly right focusable element at details screen, now changed to move focus at very 1st focusable element. Focus behavior changed when moving focus from:
    -Menu Purpose List to Purpose Details screen.
    - Parent Purpose Details to Child Purpose Details screen.
    -Vendor List to Vendor Details screen.
    -SDK List to SDK Details screen.


202403.2.0

Common

Added

  • IAB keys will be stored in common storage if current template type is IAB.
    • All these keys saved related to IAB will be cleared from the common storage when user moves to a region where template type is Non-iab. IAB keys will be backed up on user profile level.
    • If user moves back to IAB template, then if profile contains IAB keys SDK will restore that to common storage.

Fixed

  • Correct the behaviour for Reject All, when Object to LI is set to LIActiveIfLegalBasis. We reject everything except the LI's of purpose and Vendors.
  • Fixed and issue where some IAB TCF 2.2 keys was updated wrongly.

tvOS

Fixed

  • Fixed an UI issue at Vendors and SDKs filter list where apply and clear all button text was not taking as per admin config.
  • Fixed an UI issue at Banner screen for multi line title text.
  • Fixed an UI issue at Purpose Details screen where consent info row was showing for always active category even if always active text configured as empty at Admin UI.
  • Fixed an UI issue at ATT and Age Gate screens where local logo image was showing for fraction of second before downloading and showing logo configured at admin UI.

202403.1.0

Common

Added

  • Added support to send consent string in consent payload. We send either GPP string if available or TC String if applicable in payload now.
  • SDK will now compute and save IAB TC string into UserDefaults with the default configured values upon SDK initialization if a TC string is not yet created through user interaction.

iOS

Fixed

  • Fixed an UI issue at Banner screen where privacy policy link text was not resizing with dynamic font change.

202402.1.0

Common

Fixed

  • Fixed the logical issue with GPP header computation.
  • Fixed an issue with additional consent record added upon app restart as consent is re-sent on kill and launch of the app.

Changed

  • Changing the consented date (that is passed as part of external consent string to webview) format to yyyy-MM-dd'T'HH:mm:ss.SSS'Z' to be in parity with Web.
  • Adding Support for Google Consent mode. Please find detailed documentation here: Google Consent Mode - Mobile
  • Added support to pass JWT token in Consent API for cross device users, when allowed through admin setting.
    • Geo rule has a setting Require Authentication on this Collection Point for known users to turn on this, only for them auth token is sent to secure the consent logging.

iOS

Added

  • Adding Right-To-Left for the following views:
    - Purpose Details UI.
    - Illustrations UI.
    - Vendor List UI, Vendor Filter UI, Vendor Details UI.
    - SDK List UI, SDK Filter UI.


202401.2.2

Common

Added

  • SDK will now write IAB US Privacy string with both the keys IABGPP_6_String and IABUSPrivacy_String into default shared preferences when GPP is enabled for a CCPA configured region.

202401.2.0

iOS

Added

  • Adding support for Right to Left (RTL) languages for Banner and Preference Center UI on iOS.

Fixed

  • Fixed an issue with Allow All toggle not working in Vendors screen.

Common

Added

  • Adopted IAB Group Prefixes from OneTrust response.
  • Update SDK Privacy manifest to add UserDefaults as per Apple privacy guidelines.
  • Changed the logic for default identifier type. Now for anonymous user we use default 'Cookie Unique Id' always.

Fixed

  • Fixed an issue where downloading OneTrust SDK data for IAB template second time onwards would take more time.
  • Added restrictions for button radius maximum to half of the button height for all OneTrust SDK UI.

202401.1.0

Common

Added

  • Added support for authenticated consent sync with existing multi-profile user.
  • Introducing new public API OTPublishersHeadlessSDK.shared.getVendorCount(forCategory: String). Exposed this public method to get vendors count(Int) related with custom category id.
    - Individual category will have active IAB vendors count.
    - Parent category will have aggregated active IAB vendors count.
    - Vendor count -1 will return for empty category id.

202312.1.0

Common

Added

  • Added support to add/show newly added vendors post publish as inactive/active based on Admin configuration. If "Add New Vendors as Inactive" is toggled on, vendors will be added as inactive and does not show up in UI. If off, all newly added vendors are also shown up.

iOS

Added

  • Added the support to voice over accessibility "X results found" for tableview search results in SDK and Vendor list screens.
  • Added support for cross device authenticated consent for new user.

Fixed

  • Fixed an UI issue related with vendor list back button color.

tvOS

Added

  • Added support for cross device authenticated consent for new user.

Fixed

  • Fixed an UI issue with IDFA where title and description was not updating as per admin config.

202311.1.3

tvOS

Fixed

  • Fixed an issue with IDFA where title and description was not updating as per admin config.

202311.1.0

Common

Added

  • Added support to always use identifier Type for authenticated user as the one given while first consent was given by authenticated user.

Fixed

  • Fixed an issue where more than 1024 character long log message was truncating.

iOS

Fixed

  • Fixed an UI issue where the background view was bring blocked from being visible if 1/3 or 1/2 banner height ratio scenarios were configured in the templates.

tvOS

Fixed

  • Fixed an UI issue where category name was not showing at preference center menu list.

202310.2.0

Common

Added

  • GPP string is now also passed into the OTExternalConsent for passing consent to webview.
  • Have ability to enable GPP for TCF Templates and in turn,. result in having TC String and GPP string be appended together.

202310.1.0

Common

Added

  • Made Data Subject improvements to iOS and Apple TV. New sync param identifierType is introduced, with which user can pass the identifier type. renameProfile API has also additional param to pass the identifier type.
  • Updates to TC string key "NonStandardStacks". Now key in common Storage withh read as NonStandardTexts for TCF 2.2. This value is based on the admin UI settings based on if Illustrations are overridden or stack is modified. While constructing TC String, we use it as per the admin configuration.

iOS

Fixed

  • Fixed an UI issue at purpose details screen where all UI elements don't have same left alignment.

tvOS

Fixed

  • Fixed an issue where user is unable to navigate to the vendor list section in the preference center.

202309.1.0

Common

Fixed

  • Fixed an UI issue in Preference Center where Purpose subtitles were overlapping which each other.

iOS

Added

  • Added language translation support for IAB Data Categories.
  • Added support to show Custom Illustrations UI.

Fixed

  • Fixed an issue with USP being shown as 1--- even when IAB USP string config is OFF.
  • Fixed an issue with Allow All button was present in the general vendor page for Always active Vendors.

tvOS

Added

  • Added language translation support for IAB Data Categories.
  • Added support to show Custom Illustrations UI.

202308.2.0

Common

Added

  • Made changes to pull TC string policy version through Global Vendor List.
  • Added support to handle GPP configuration for CCPA template. When we enable GPP, based on if stateSpecificString is toggles on/off in admin, California/US-National string would append to GPP string respectively. Along with that if CCPA is enabled, CCPA string is also computed and appended.

iOS

Added

  • Added support to show linked Vendors Count for IAB TCF 2.2 purpose as subtitle.
  • Provided support for "Legitimate Interest claim" URL under Vendor details along with privacy url for TCF 2.2.
  • General vendors now follows the consents of their linked categories and go by their consent model initially on loading and changes when we change consents for categories.
  • Added support to show Vendors Count subtitle at purpose details for IAB 2.2 child categories.

tvOS

Added

  • Added support to show linked vendors count for IAB TCF 2.2 purpose as subtitle.
  • Provided support for "Legitimate Interest claim" URL under Vendor details along with privacy url for TCF 2.2.
  • Added support to show View Illustration and Full Legal Text as QR code image on purpose details screen.
  • Added support to show Vendors Count subtitle at purpose details for IAB 2.2 child categories.

Fixed

  • Fixed an crash issue where gppMobileData was getting accessed before SDK initialized.

202308.1.0

iOS

Added

  • Added support for IAB TCF 2.2.
  • Added multi language support to parse and show policy url link at vendor details for IAB 2.2 template.

tvOS

Added

  • Added support for IAB TCF 2.2.
  • Added multi language support to parse and show policy url link at vendor details for IAB 2.2 template.

202307.1.0

iOS

Added

  • Added support to show TCF vendors count in banner description by replacing [VENDOR_NUMBER] with active vendor count.
  • [ Added support to show TCF vendors count in Preference center.
  • Added support to show data declaration and data retention on vendor details screen.

Fixed

  • Making sure we open only HTTP/HTTPS links in Safari. Remaining links will be opened using UIApplication.

tvOS

Added

  • Added support to show TCF Vendors count in banner description by replacing [VENDOR_NUMBER] with active vendor count.
  • Added support to show TCF vendors count in Preference center.
  • Added support to show data declaration and data retention on Vendor Details screen.

202306.2.0

Common

Fixed

  • Fixed app crash issue while generating TC String for some specific geolocation.
  • Fixed an issue where consent logging report was not getting sent if user consents offline

202306.1.0

Common

Fixed

  • Making sure we override the consent of the SDKs linked with ATT to 0 only if ATT status is rejected. If its not rejected, we retain the SDK's previous consent.

  • Fixed an issue with active sections going wrong or nil when state specific is OFF.

202305.1.4

Common

Changed

  • Changed the logic to update sensitive notice bits computation for California, Utah and US National.

202305.1.0

Common

Added

  • Added support to create Utah string for GPP.

iOS

Fixed

  • Fixed an issue where Confirm my choice button height was thin compare to other button on Preference center UI.

tvOS

Fixed

  • Fixed an UI issue with always active category at Preference center UI where consent label was not showing even after admin UI configuration.
  • Fixed issue where focus color was not applying on menu list and all purpose category title was showing empty when preference center title is set to empty at admin UI.

202304.1.0

Common

Added

  • Added support to create Connecticut string for GPP.
  • Added support to create Colorado string for GPP.
  • Compute GPP USString based on admin geolocation settings for Generate State Specific String.

iOS

Fixed

  • Fixed an issue where back buttons are not visible in SDK list and PC details screen.
  • Fixed an issue where removing unwanted value stored in common default for new user.

202303.2.0

Common

Fixed

  • Fixed an issue with Banner re-appears on migration.

  • Fixed an issue with Title not coming up in Preference Centerdetails view for an always active category with empty text for always active text.

  • Fixed an issue where category names are getting hidden in Preference Center Details Screen when Preference Center title is empty.

  • Fixed a failed Migration issue when Multi-Profile is disabled.

  • Fixed an issue with previously downloaded country code was logged with ATT consent.

  • Fixed an SDK crash issue in background related with hyperlink.

tvOS

Added

  • Added Support to show Button Border as per admin UI settings.

202302.1.0

Common

Fixed

  • Fixed an issue with IAB USP string doesn't gets updated when moved from IAB to CCPA region
  • Making sure that we fetch all the key value pairs in the current storage dictionary and then save them to the new storage instead of performing a file operation during copying data from one storage to another (as this was leading to inconsistencies because of timing issues)

iOS

Added

  • Enhanced voice over accessibility for some UI elements of SDK screens where Title/Category label not reading out consent/UISwitch status

Fixed

  • Fixed an issue where 'Always Active' category was showing with empty check-boxes

202301.2.0

Common

Added

  • Added Dark Mode support using config.plist file for UCP Screens.

202301.1.0

iOS

Added

  • Added normal and dark mode support through OTSDK-UIConfig plist file. Now user can pass different custom file path based on system (normal or dark) mode

Fixed

  • Fixed an issue where parent IAB purpose consent is getting enabled with subsequent downloading the data when all children are always active

Common

Fixed

  • Fixed an issue where SDK crashes in certain geolocations when Cross Device is enabled and when we decode TCString

202212.1.0

tvOS

Fixed

  • Fixed an issue where focus was not moving to close button at banner UI with swipe

iOS

Fixed

  • Fixed an issue where allow all toggle showing at SDK List view even for SDKs with no choice consent
  • Fixed SDK consent migration issue where consent was not retained consistently

202211.2.0

Common

Fixed

  • Fixed an issue with US Privacy string and Log message if CCPA parent category is not found.
  • Fixed an issue with seeing Banner even after giving consent after data is downloaded. This was happening when there were IAB purposes in template with consent and LI disabled.

Changed

  • Support for Xcode 14:
    • We will be supporting two versions of XCFramework for both iOS and tvOS platforms.
      • XCFramework with Bitcode disabled (Built on Xcode 14). This will be uploaded to OneTrust portal, Cocoapods and Swift Package Manager.
      • XCFramework with Bitcode enabled (Built on Xcode 13). This will be uplaoded to OneTrust portal.
    • Deprecating support for fat framework on both iOS and tvOS platforms. For customers using fat frameworks, please switch to XCFramework.

iOS

Fixed

  • Fixed some UI issues where:
    • An UIKit api call in background thread.
    • Layout constraint violation warning at Vendor List screen when confirm my choice button hidden.
    • Font and alignment issue at Banner screen for IAB title and description.
  • Fixed an issue with random text is displayed in Vendor details for vendors missing use in domains of disclosures.
  • Fixed UI issues for dynamic font.

tvOS

Fixed

  • Fixed an UI issue at banner screen where Vendor List button border radius and border color was not applying same as Show Purposes button.
  • Fixed an issue where IAB and Google vendor buttons are not taking proper title in List of Partners screen.
  • Fixed an UI issue where QR code image view not showing for vendor's privacy policy url.

202211.1.0

Common

Fixed

  • Fixed an issue where updated SDK consent are not saving properly on Confirm My Choice button user interaction in case of consent updated for both category and SDK Ids assigned to same category and updated SDK Id consent is different from updated category consent.

iOS

Fixed

  • Fixed an issue with sync notification being shown even when sync is disabled.

tvOS

Added

  • Cross Device Sync Notification:
    - Whenever cross device consent is setup, we present a sync notification on the device to make sure end user is informed about the privacy preferences being synced from other devices.
    - When sync started, it shows syncing for a minimum of 1.5s if sync completes before that or else, we show as long as sync takes.
    - When sync completes we show complete notification. Feature can be enabled or disabled from admin UI.
    - Show notification for cross device enabled dsid, only when there is change in consents from last data download.

202210.1.0

Common

Fixed

  • Fixed an UI issue when app freezes for fraction of seconds with user interaction
  • Now calling optIntoSaleOfData, optOutOfSaleOfData and saveConsent public method in background thread with optional completion block

iOS

Changed

  • Updated the logic for showing sync notification
  • Now we show notification for cross device enabled data subject ID, only when there is change in consents from last data download

Fixed

  • Fixed an UI issue where description of UC Purposes is not being displayed on SDK UI
  • Fixed an issue with UC Purposes custom preferences options are getting opted out in few scenarios

tvOS

Fixed

  • Fixed an UI issue at Preference center screen where selected category active color apply to multiple category when coming back to Preference center screen from either Vendor list or SDK list screen
  • Fixed a crash issue when scrolling through the IAB Vendor List on AppleTV

202209.2.0


iOS

Fixed

  • Added back support for Swift package manager deployment. - As part of this fix, the minimum deployment target of OneTrust SDK has been changed to iOS 11.0 (iOS 10 is now deprecated)
  • Fixed font size inconsistency issue with SDK UI when using CustomUIConfig
  • Fixed an UI issue where some details like vendor details, vendor LI and consent label, IAB purpose LI and consent label, SDK description label are getting hidden when show preference center description is disabled at admin UI

Added

  • Cross Device Sync Notification. - Whenever cross device consent is setup, we present a sync notification on the device to make sure end user is informed about the privacy preferences being sync’d from other devices
    • Feature can be enabled or disabled from admin UI

Deprecated

  • Support for iOS 10 is deprecated

202209.1.0

Common

Added

  • Added logging reason (with codes) for showing Banner UI
    • Banner reason codes will start from 101
  • Adding logging reason (with codes) for showing Preference Center UI
    • Preference Center reason codes will start from 201
  • Added support for prompting the banner when a new category is introduced
    • Post giving consent, if a new category or purpose is added and published, Banner will be prompted again to the user

Deprecated

  • Removed the vendorListClose case from public enum ConsentInteractionType
  • Removed the public API setBannerHeightRatio(_:) which is part of the OTSDKParams

iOS

Fixed

  • Fixed an issue where Mobile-Category descriptions disappear when toggling of "Show description" option in the template for Preference Center

tvOS

Fixed

  • Fixed an issue where correct color was not applying for 'Vendor's Privacy Policy QR Code' image

202208.1.0

Common

Added

  • Added support to update General Vendor List and TCF Technical Specification Vendor Device Storage and Operational Disclosure
    • Vendor details storage domains will be coming up in the UI along with disclosures

Deprecated

  • Removed bitcode targets for iOS and tvOS OneTrust SDKs

Fixed

  • Fixed an issue where consent statuses were not being updated when changing consent models from opt-out to opt-in and vice versa.
  • Fixed an issue to now ensure that our SDK holds a weak reference to the View Controller passed as part of setupUI(_:UIType:) API.
    • This ensures that whenever app removes the view from view hierarchy, the instance will get deallocated.

iOS

Fixed

  • Fixed an issue with Universal Consent Purposes where the topic and custom preferences details were not showing properly if UC Purposes description is hidden

tvOS

Added

  • Added support to show privacy policy URL as QR Code image on Banner, Preference Center and Vendor List.
  • Added support to show Vendor's device storage disclosure details on IAB TCF Templates

Fixed

  • Fixed an issue on Preference Center with regards to category/purpose description having empty whitespace.

6.39.0

Common

  • Apple SDKs now accept DSIDs containing forward slash characters (/).

Changed

  • Deprecated Support for Bitcode enabled in the OTPublishersHeadless SDK.

6.38.0

Common

  • Added the public API OTPublisherHeadlessSDK.shared.getCurrentActiveProfile() to retrieve the DSID of the current profile.

iOS

Added

  • Added First-Download Offline Support.
    • This allows you to configure your SDK to function in an offline state without making API calls to fetch data.
    • This allows you to provide the expected JSON files to the SDK in the event an API call cannot be made to the mobile endpoint.

tvOS

Fixed

  • The Preference Center description now displays as expected when the Show DSID configuration has been disabled in the Admin UI.
  • The Vendor List button text on the Banner now adopts the correct admin configuration.

6.37.0

Common

Added

  • Added Generic Broadcast Action OTConsentUpdated that will be fired when the UI is dismissed.

iOS

Fixed

  • Resolved an issue that was causing consent values to not update properly.
  • Resolved an issue that was causing the SDK description to revert to English upon save when the description was written in another language.

6.32.0

Common

Changed

  • CreatedDate and UpdatedData should always be in sync in TC String
    • As per the new rule by IAB, the created and updated dates should be same always. That will be the date whenever new tc string is generated or updated from previous.
  • Support InteractionType for Banner's Continue without Accepting
    • Now, on click of cross button in Banner, Consent interaction type would be logged as Banner - Close.
    • On click of Continue without accepting button in banner, interaction type would be logged as Banner - ContinueWithoutAccepting.
    • In both cases mentioned above, the default consents would be logged for the purposes.
  • Adressed the new IAB requirement to auto expire tcstring and prompt banner after the specified interval.
  • Changed some log level to info instead of warning/error.

Fixed

  • Fixed an issue with created and updated time in tcstring is being sent in current timezone. Now it will be in UTC.
  • Fixed an issue where last updated time in tcstring is not being updated on user interaction if no any change in saved consent.

iOS

Added

  • Added ADA compliance voice over support for preference center UI and preference center details UI.
  • Added ADA compliance voice over support for vendor list UI, vendor details UI and vendor filter list UI.
  • Added ADA compliance voice over support for banner title and banner policy link UI elments.
  • Added ADA compliance voice over support for SDK list and SDK filter list UI.

Fixed

  • Fixed an issue with able to change the toggle of ATT linked category's SDK when no tracking consent is given.

  • Fixed an issue with showing allow all toggles, when SDK level opt-out if OFF.

    6.31.0


Common

Added

  • Added support for showing the banner in IAB-Region, on moving to IAB from a NON-IAB region, after giving the consent in NON-IAB region. With this we ensure now to get the consents for the new purposes that gets added in IAB region.
  • Now, SDK logs are logged using NSLogs, so that now logs gets printed in the device console logs for the production versions.

Fixed

  • Fixed an issues with toggle status of categories on re-downloading the data in other region of same appID loading a different template
  • Fixed an issue where TCString was getting updated everytime data is downloaded whenever there are linked categories with ATT. For the fix, we are now making sure that we check if the TCString is changing and only if it is different from the last stored value, then we update the dateUpdated.
  • Fixed an issue where in case of cross device sync, created Date of the TC String was getting updated (Created Date should never be updated unless the TC String expired).
  • Fixed an issue where an always active iab subgroup is not visible when grouped under an always active custom group.
  • Fixed an issue where parent child relationship broken for cross device profile sync.
  • Making sure that we override the existing TC String whenever shouldShowBanner is set to true.

iOS

Added

  • Added banner close button voice over support for ADA compliance.
  • Added Allow All toggle for SDK List.
    • Now users can disable or enabled all the filtered/Searched SDKs together at once using the allow all toggle.
    • Whenever all the linked SDKs are turned NO or OFF, their corresponding category will also be turned on/off.

Fixed

  • Banner Layout is overriding the app page when come from vendor list UI.
  • Fixed an issue with showing Empty space showing when description is disabled in banner.

tvOS

Added

  • Added support to show the DSID/User ID in Preference Center based on settings in admin UI.

  • Show timestamp label and timestamp on the Preference Center.

  • Based on Admin UI, configuration, we can now show the last consented time stamp in PC UI under DSID section.

    • If user has not consented, then we would show the text as not consented yet, which again is configurable.

      6.30.0


Common

Fixed

  • Fixed an issue where IAB Purposes consent are lost when changing locations.
  • Fixed an issue where the SDKs linked with categories that are tied with ATT were not reflecting the ATT status whenever ATT status is not authorized.

iOS

Added

  • Show timestamp label and timestamp on the SDK PC UI.
    Based on Admin UI, configuration, we can now show the last consented time stamp in PC UI under DSID section.
    • If user has not consented, then we would show the text as not consented yet, which again is configurable.
  • Now admin can enable or disable SDK Level Opt-Out toggles. - Based on Admin UI configuration, if SdklevelOptOut toggle is enabled, consent toggles will be shown in SDK list. - If SdklevelOptOut toggles is diabled, behaviour continues to be as it is today. - SDK tied to Always active category will be shown as always active in SDK list page.
  • Broadcast Event when SDK status changes.
    • In addition to current SDKIDs broadcasting flows, when the SDKlist toggles are enabled, on SDK consnets changes we do broadcast for those changed ones.
    • But this would be triggered only when user clicks on Confirm My Choices in PC.

Fixed

  • Fixed an Banner UI issue where 1/3rd Banner Title was not vertically alligned with close button.
  • Fixed an Preference Center UI issue where IAB purposes were showing even if both consent and LI are disabled.
  • Making sure that we take the background color for confirm choices button of UCP UI from mobile data.

tvOS

Changed

  • Move the 'Consent' and 'LI' toggles above Purpose Description.

    6.29.0


Added

  • Exposed public methods to update and query the consent status of General Vendors.
  • Extended the functionality of method updateVendorConsent(<vendorListMode>,<vendorId>,<consent status>) to update the consent status of General Vendors by passing the mode as OTVendorListMode.GENERAL.
  • Extended the functionality of below given methods to query the consent values of General Vendors.
  • getVendorListData(OTVendorListMode.GENERAL) will return a JSONObject containing all the vendors configured with the last saved consent values.
  • getVendorListUI(OTVendorListMode.GENERAL) will return a JSONObject containing all the vendors configured with the last updated(user updated but not yet saved) consent values.
  • getVendorDetails(OTVendorListMode.GENERAL,<vendorID>) will return a JSONObject containing data for a specific vendor with the last updated(user updated but not yet saved) consent value.
  • Added EventListeners to notify app about consent toggle changes on Vendor List.
  • SDK will now trigger onVendorListVendorConsentChanged(String vendorListMode, String vendorId, int consentStatus) event which notifies the type of vendorList along with the vendor id and its status once user interacts with the toggle on vendor list.
  • The existing event onVendorListVendorConsentChanged(String vendorId, int consentStatus) triggered without a vendorList type is still maintained for IAB and Google Vendor List along with new implementation.
  • Support for Searching vendors by names and filtering by purposes on General Vendors.
  • SDK UI will now display User ID and description at the bottom of Preference Center when enabled from Admin UI.
  • User can copy UserId by clicking on copy icon to the device’s clipboard from Preference Center UI.
  • Support for sectional UI on Preference Center view. The divider colors will be SDK defined colors set according to the theme by default. App can customize this color using UX params if the default color seems to be not matching with the Background color set.

Fixed

  • Fixed an issue where we were getting IAB TCF 3.3/3.2 Errors. We are updating the logic w.r.t Created and LastUpdated for IAB TCString.
    - We update the LastUpdated everytime TCString is updated.
    - We update Created only when user is giving consent for the first time or user is giving consent after re-consent and republish.

Deprecated

  • We deprecated the below methods to update and get vendor consent and legitimate interest status for IAB. App will now have to pass vendor list mode as parameter to update and retrieve data related to a particular type of vendor.
    - updateVendorConsent(<vendorId>,<consent status>)
    - getVendorListData() -getVendorListUI()
    - getVendorDetails(<vendorID>)
    - getVendorDetails(<vendorListMode>,<vendorID>)where vendor ID passed was integer. Use new method which accepts vendorID as String to get details about a specific vendor.

6.28.0

(2021-11-23)

Common

Fixed

  • Fixed an issue where the Consent logging is failing post migration from a lower environment to a higher with same configurations for IAB templates.

iOS

Added

  • Added support for general vendors.
  • Added support to show general vendors from SDK Banner UI.
  • Added support to show general vendors details.
  • Added support to show general vendors from Purpose Details SDK UI.
  • Added support to broadcast all UCPurposes after OneTrust SDK data fetch.
  • Added support to show the DSID/User ID in Preference Center based on settings in admin UI.

Fixed

  • Fixed an issue where background color of close buttons and links going black on iOS 12.x versions .

tvOS

Fixed

  • Fixed an issue where the purpose description text is the same for every category even though each category has its own different text or is empty.

6.27.0

(2021-11-15)

Common

Added

  • Adding capability to update the consent of a group's hierarchy using OTPublishersHeadlessSDK.shared. updatePurposeConsent(forGroup:consentValue:updateHierarchy:).
  • Introducing a new parameter updateHierarchy - when this is set to true, the items in its hierarchy will be updated based on the new toggle status passed.
    Changed
  • Moving forward we will be returning default values as part of an external consent when trying to retrieve using OTPublishersHeadlessSDK.shared.getOTConsentJSForWebView().
  • Note: Previously whenever a consent was not given, we were returning an empty string.

Fixed

  • Fixed an issue where unable to scroll preference center description with large content.
  • Fixed an issue where Iab purpose details are showing and logging consent even if both consent and Legitimate Interests are disable.
  • Fixed an issue with banner not shown issue with cross geo, post republish with re-consent.

iOS

Fixed

  • Fixing the issue where text alignment was not center when close button is shown as a button with text.

tvOS

Fixed

  • Fixed an issue where html tags rendering as plain text for Purpose descriptions.

6.26.0

(2021-10-14)

Common

Added

  • Added Public API to update UCP consent.
    - Public API to update consent for UC Purpose ID.
    - OTPublishersHeadlessSDK.shared.updateUCPurposeConsent(purposeId: String, withConsent: Bool)
    - Public API to update consent for UC TopicOption ID.
    - OTPublishersHeadlessSDK.shared.updateUCPurposeConsent(topicOptionId: String, purposeId: String, withConsent: Bool)
    - Public API to update consent for UC CP Option ID.
    - OTPublishersHeadlessSDK.shared.updateUCPurposeConsent(cpOptionId: String, cpId: String, purposeId: String, withConsent: Bool)
  • Added Public API to get UCP consent.
    - Public API to get consent for UC Purpose ID. It will return consent as boolean value.
    - OTPublishersHeadlessSDK.shared.getUCPurposeConsent(purposeId: String)
    - Public API to get consent for UC TopicOption ID. It will return consent as boolean value.
    - OTPublishersHeadlessSDK.shared.getUCPurposeConsent(topicOption: String, purposeId: String)
    - Public API to get consent for UC CP ID. It will return a dictionary as UC CP Option ID as key and it's consent value as either 0 or 1.
    - OTPublishersHeadlessSDK.shared.getUCPurposeConsent(cpId: String, purposeId: String)
  • Added support to disable LI toggle for ATT linked IAB Purposes, if ATT is disabled.
  • Added support for including the interaction type in DS Elements when consent is given in ATT and UC Preferen Center views.
  • Introduced three new Consent Interaction types.
    - ucPreferenceCenterConfirm - For UC Preference Center Save Preferences button click and consent will be logged as UC Preference Center- Confirm .
  • appTrackingConfirm - For ATT Allow button click and consnet will be logged as ATT - Confirm .
  • appTrackingOptOut - For ATT Ask App not to track button click and consent will be logged as ATT - OptOut.
  • Added support to broadcast for UCPurposes.
  • UCPurpose Id can be used as a key for listening the consent change broadcast.
  • Broadcast will send a dictionary to listner in format given: ["status": 1, "topics": ["topicOptionId1": 0, "topicOptionId2": 0], "custom_preferences": ["cpId1": ["cpOptionId1": 0, "cpOptionId2": 0]]]

Fixed

  • Fixed the issue where SDK version is not getting picked up correctly on Xcode 13.
  • Fixed the issue where showShowBanner was being returned as false when we switch the value of banner enabled at geolocation from false to true.
  • Fixed an issue where getConsentStatus is not returning expected value for an always active category/purpose.
  • Fixed an issue where Cookie List was not showing (even though it was enabled) when show sub groups is disabled for a parent purpose.
  • Fixed an issue where app is crashing when links are clicked in Preference center UI.

iOS

Added

  • Adding support for one third banner height ratio. Whenever banner height is set to one third ratio, we will be making sure that:
  • Banner logo will always be hidden.
  • The close button is always show as button with image (if enabled). This means that even if close button is enabled as CNIL, we will be showing it as a button with image on 1/3rd banner.
  • Title will always be shown next to close button.

Removed

  • Deprecating public API (setBannerHeightRatio(_ heightRatio: OTBannerHeightRatio)) to set banner height ratio. This should be configured at the template level on OT Server.

6.25.0

(2021-10-08)

Common

Added

  • Xcode 13 support will be available if OT SDK is integrated via cocoapods or if XCFramework is downloaded from OneTrust portal and integrated directly into the application.
    - Note: We will be supporting Xcode 13 via Fat framework in upcoming release (6.26.0).
  • Added support to show custom mobile and CTV category titles.
    - Wherever the category is displayed in the UI can now be configured to have custom names based on admin configuration.
    - This can be seen in Preference center, Preference center details and SDK list filter.
    - This is has been supported on both Mobile and CTV.
  • Added support to show/hide log in ATT and Age-Gate views based on template settings.
    - By default the setting in admin UI is toggled on. And logo is shown on SDK screens.
    - If Show Logo is toggled off, Logo would be hidden in the SDK UI.
  • Added support for preventing newly synced vendors from Showing as Active on Vendor List.
    - Newly added vendors which are added by IAB to their list will not be shown automatically in Vendor List UI.
    - Newly added vendors will only be shown in the UI after publishing the script again.
    - Newly added vendors will not be even considered for tcString generation unless script is re-published and data is re-downloaded.
  • Added support for enabling or disable the Dark Mode for SDK through OTUIConfigurator.
  • New optional delegate method shouldEnableDarkMode has been added into UIConfigurator, and this has to be implemented to force the SDK to either dark or light mode to override device dark mode settings.
  • Dont conform to this method to you dont want to force the sdk to specific mode and to go with device's Dark Appearance settings.
  • Return true to force enable dark mode and this will override device's Dark Appearance settings.
  • Return false to force sdk to light mode and this will override device's Dark Appearance settings.

Fixed

  • Fixed an issue with Policy link label text set at admin UI was not applied for vendor details.
  • Fixed an issue with Language code warning even when correct code is being passed in SDK.
  • Fixed an issue where logs are printing even after enableOTSDKLog as OTLoggerConstant.noLogs.
  • Fixed the issue where SDK version is not getting picked up correctly on Xcode 13.

iOS

Added

  • Adding support for iOS 9 on OT Native SDK for FAT framework and XCFramework. Notes:
    - We will continue to support only iOS 11 and above via cocoapods (we will not be supporting iOS 9 or 10).
    - If a customer wants support for iOS 9 or 10, they would have to integrate the XCFramework or the Fat framework directly to their application (by downloading it from OT portal).
  • Adding support for one third banner height ratio. Whenever banner height is set to one third ratio, we will be making sure that:
    - Banner logo will always be hidden.
    - The close button is always show as button with image (if enabled). This means that even if close button is enabled as CNIL, we will be showing it as a button with image on 1/3rd banner.
    - Title will always be shown next to close button.

Fixed

  • Fixed an issue where changing toggle of parent category with multiple child at Preference Center UI was replacing Always active consent label with consent toggle at Purpose Details UI.

Removed

  • Deprecating public API (setBannerHeightRatio(_ heightRatio: OTBannerHeightRatio)) to set banner height ratio.This should be configured at the template level on OT Server.

6.24.0

(2021-09-03)

Common

Added

  • Support for Age-Gate Prompt UI
    - SDK will now render Age-Gate UI as per the configurations done in OneTrust admin UI and save consent to SDK on user interactions for the same.
    - Use existing public method showConsentUI(.ageGate) with permission type as .ageGate to initialize and render Age-Gate UI. App can decide when the prompt UI has to be shown. On calling the public method, SKD will force render the prompt UI regardless of consent being taken previously.
    - Exposed public method getAgeGatePromptValue to return consent status for Age-Gate. SDK will return 1 or 0 based on the consent given by the user. It will return -1 if user has not interacted with the SDK or if SDK is not yet done with the initialization process.
    - Age gate prompt will use the same UX params as that of the ATT except for the text data.

iOS

Changed

  • For UCP, when a purpose is toggled off, Topics and CP under that purpose which were already selected would be un selecetd as well.
    - With purpose toggled off, if user moves to detail view of Topics or Custom Preferences, options would be greyed out with user interaction not allowed.
  • Options and Page Header for UC Purposes can be set in Admin UI now and UCP screen in SDK would reflect those values for options and page header respectively.
  • All the clickable links in the OT SDK UI will now be opened within the Application itself (using SFSafariViewController).

Fixed

  • Fixing the issue where HTML data is not showing correctly in Purpose Details description.
  • Fixed the issue where Purpose Details view was showing incorrect text color for some purpose description.
  • Fixed an issue where Vendor List UI was showing incorrect results for IAB stack filtered list.
  • Fixed an issue with able to view the links when link text is empty - cookies , vendor list and legal text links.

Added

  • Added Cross device consent for UC Purposes.
    - Now the consent given on one device for UC Purposes, Topics and Custom Preferences can be see syncing on data download on another device with cross device sync enabled.
  • TC String now will be encoded with a 1 in the Vendor’s Legit Interest section for the vendors with 0 Purposes and 0 Legitimate Interests, but does support > 0 Special Purposes to comply with the latest TCF2 policy changes and Legit Int enabled on Template.
    - For vendors satisfying above, LI toggles would not be shown in the UI.
    - But will only be included in Vendor's Legit Interest of tcstring irrespective of the consent model type and if Accept All or Reject All or Save Preferences consent is given. It will always be included on meeting the condition.

tvOS

Added

  • Adopted new keys from OTTData to enhance user experience with focus UI elements.
  • Added Focus Color and Focus Text Color to enhance user experience with focus UI elements.
  • Focus Color and Focus Text Color can now be configured at the template level (under CTV App section) on the server. When this is enabled Apple TV SDK UI Focus Color and Focus Text Color will change on UI element focus based on the configuration at the template level.
  • Views supporting Focus Color and Focus Text Color:
    - Banner.
    - Focus Color and Focus Text Color of UI Buttons will follow focus change configuration for Banner.
    - Preference Center (PC).
    - Focus Color and Focus Text Color of UI Buttons will follow focus change configuration for Preference Center.
    - Focus Color and Focus Text Color of Purpose List will follow focus change configuration for Menu at Preference Center.
  • Purpose Details.
    - Focus Color and Focus Text Color of Focusable UI element will follow focus change configuration for Preference Center.
  • Vendor List.
    - Focus Color and Focus Text Color of UI Buttons will follow focus change configuration for Preference Center.
    - Focus Color and Focus Text Color of Purpose List will follow focus change configuration for Menu at Preference Center.
  • Vendors Filter.
    - Focus Color and Focus Text Color of UI Buttons will follow focus change configuration for Preference Center.
    - Focus Color and Focus Text Color of Focusable UI element will follow focus change configuration for Preference Center.
  • Vendor Details.
    - Focus Color and Focus Text Color of Focusable UI element will follow focus change configuration for Preference Center.
  • Changed
    - Consuming mobile data for Apple TV SDK UI. SDK UI can now be configured at the template level (under Mobile section) on the server.
  • Banner.
  • Banner Logo will show based on configuration for Logo at Banner under Mobile section.
  • Text color for Title and Description will follow the configuration at Banner except for the font size and allignment under Mobile section.
  • Buttons styling will follow the configuration at Banner except for the font size and allignment under Mobile section.
  • Preference Center (PC).
    - PC Logo will show based on configuration for Logo at Preference Center under Mobile section.
    - Purpose List styling will follow the configuration at Preference Center for Menu under CTV App section.
    - Buttons styling will follow the configuration at PC except for the font size and allignment under Mobile section.
  • Purpose Details.
    - Text color for Title and Description will follow the configuration at PC except for the font size and allignment under Mobile section.
  • Vendor List.
    - Vendor List Logo will show based on configuration for Logo at Preference Center under Mobile section.
    - Buttons styling will follow the configuration at PC except for the font size and allignment under Mobile section.
    - NOTE: Alphabatic Filter button and back button will not follow the corner radius.
    - Vendor List styling will follow the configuration at Preference Center for Menu under - CTV App section.
    - Vendors Filter.
    - Text color for Title will follow the configuration of PC description except for the font size and allignment under Mobile section.
    - Buttons styling will follow the configuration at PC except for the font size, allignment and corner radius under Mobile section.
    - Vendor Details.
    - Text color for Title and Description will follow the configuration at PC except for the font size and allignment under Mobile section.

Fixed

  • Fixed an issue where html rich text was not showing properly for DPD Title and DPD Description at Banner UI.
  • Fixed an issue where List of Partner button title was not showing in multiple lines at Banner UI.

6.23.0

(2021-08-16)

Common

Changed

  • Moving forward, we will be recomputing the IAB TCF Data Keys stored in standard UserDefaults ONLY when the SDK encouters one of the following scenarios:
    - When a save action is performed.
    - When ATT linked categories are enabled.
    - When cross device sync is enabled and isServiceSpecific is coming down as false, we will be asking user for reconsent.
    - Fixed an issue with DS elements are sent only when the Advanced Analytics in Admin UI is enabled with non Strictly necessary cookie category. Now it will be sent irrespective of group type chosen.

iOS

Added

  • Added Dark Mode Support for Native iOS SDK.
  • Dark Mode styling can now be configured at the template level (under Mobile section) on the server. When this is enabled and a mobile device with Native iOS SDK enables dark mode in the device settings, Native SDK UI will switch to dark mode based on the Dark Mode styling configured on at the template level.
  • Views supporting dark mode:
    - Banner.
    - Preference Center (PC).
    - Purpose Details.
    - Parent Purpose Title will follow the styling of PC Title except for the text color (it uses PC purpose item text color).
    - Child Purpose Title will follow the styling of PC purpose item styling.
    - Parent and Child descriptions will follow the styling of PC description styling.
    - Consent and LI labels will follow the PC description styling.
    - Consent and LI toggles will follow the PC toggles styling.
    - SDK List, Vendor List and Full Legal Text links will follow the PC policy link styling.
    - Always Active text label will follow the PC purpose item's Always Active Text Label styling.
    - Vendor List.
    - Background color will be PC background color.
    - Navigation title will follow styling of PC purpose styling except for font and text alignment.
    - Navigation back item color will be PC purpose color.
    - Vendor type selection on will be having the styling same as PC confirm my choices button styling.
    - Vendor type selection off text color will be PC purpose color.
    - Search bar text color will be PC description styling.
    - Vendor filter on color will be PC confirm choice button text color.
    - Vendor filter off color will be PC description text color.
    - Allow All Consent title will now have the styling same as PC purpose styling.
    - Consent and LI toggles will now be same as PC toggle color.
    - Disclosure icon will now follow PC purpose color.
    - Confirm my choices will now follow styling same as PC confirm my choices button styling.
    - Vendors Filter.
    - Vendor title will follow the styling of PC Purpose styling except font weight will be normal.
    - Apply button will follow the styling of PC confirm my choices button.
    - Background color will be PC background color.
    - Checkmark color will be PC disclosure icon color.
    - Cancel button will follow styling of PC purpose styling.
    - Vendor Details.
    - Vendor Title will follow the styling of PC Title except for the text color (it uses PC purpose item text color).
    - Vendor Disclosure Title will follow the styling of PC Description item styling except font weight will be bold.
    - Vendor Disclosure Description will follow the styling of PC Description item styling.
    - Consent and LI labels will follow the PC description styling.
    - Consent and LI toggles will follow the PC toggles styling.
    - Privacy Notice links will follow the PC policy link styling.
    - SDK List.
    - Background color will be PC background color.
    - Navigation back item color will be PC purpose color.
    - Search bar text color will be having PC description styling.
    - SDK filter on color will be PC confirm choice button text color.
    - SDK filter off color will be PC description text color.
    - SDK title will now have the styling same as PC purpose styling.
    - SDK description will now have the styling same as PC description styling.
    - SDK Filter.
    - SDK title will follow the styling of PC Purpose styling except font weight will be normal.
    - Apply button will follow the styling of PC confirm my choices button. - Background color will be PC background color.
    - Checkmark color will be PC disclosure icon color.
    - Cancel button will follow styling of PC purpose styling.
  • If Dark mode styling is not enabled at the template level, we will be displaying same UI for both dark and light mode for Native SDK UI.
    - Notes:
    - We can now add a background color for Close button at the template level (for both Banner and PC).
    - UX params file does not support Dark Mode yet.
    - It is recommended to re-publish your SDK on the server when upgrading to v6.23.0.
  • Added changes to show SDKs List Link - Only show once based on Template Settings, like how the vendor list link works today.
    - If template setting has to show on the top, it will be shown once only on the top.
    - If template setting has to show in the bottom, it will shown only once in the bottom.

Fixed

  • Fixed UI issue on Banner view. When description at the template level, we were showing empty space on banner. This issue is now resolved.

tvOS

Fixed

  • Fixed an issue where category description was taking value from group description incorrectly instead of OTT group description.
  • Fixed an issue where no-choice category was showing non translated consent status text.
  • Fixed an issue where Preference Center UI was showing non translated title for Save My Choice button.
  • Fixed an issue where bottom of content was not visible at Banner UI when text content is very huge.

6.22.0

(2021-07-22)

Common (iOS & tvOS)

Added

  • Making sure that we pass on the Google additional consent as part of the external consent data for webview whenever Google Vendors are enabled in a template associated with the OT SDK.
  • Added support for sending UserAgent as a part of Data Element in the consent payload.
  • When consent gets logged, a UserAgent property gets sent in the consent payload .

Fixed

  • Fixed an issue where Iab consent are not reseting even if cross device profile sync is configured and OneTrust admin UI published with reconsent before fetching SDK data very 1st time on device.

Changed

  • Whenever we are constructing the encoded tc string, we will always be setting isServiceSpecific to true irrespective of other factors.
  • Making sure that the CCPA values are not cleared when writing a new value, instead we just replace existing value.

Removed

  • OTPublishersHeadlessSDK.shared.initOTSDKData(), OTPublishersHeadlessSDK.shared.getOTSDKData() used for OT SDK intialization and data download are now removed.
    Applications can now start the OT SDK and download the data using startSDK(). This API returns the server response and the application can choose to save the response for any app side.
    Applications can also call the methods getDomainGroupData(), getCommonData(), getDomainInfo() for getting specific json objects contained in app data.
    * Call getBannerData(), getPreferenceCenterData() methods for getting data with respect to a particular view type.
  • OTPublishersHeadlessSDK.shared.saveConsentValue(), OTPublishersHeadlessSDK.shared.acceptAll(), OTPublishersHeadlessSDK.shared.rejectAll() and OTPublishersHeadlessSDK.shared.saveDefaultConsentValues() used for saving consent received from the user in case of BYOUI are now removed.
    * Call saveConsent(type:) instead of the above mentioned APIs which no longer exist.
  • OTPublishersHeadlessSDK.shared.setDataSubjectIdentifier() used for setting data subject identifier to SDK is now removed.
    * Applications can set data subject identifier using the setDataSubjectIdentifier method of OTCache class or through profile sync params if it cross device profile sync is configured.
  • OTPublishersHeadlessSDK.shared.getUserLocation() used for getting the user location is now removed.
    * Applications can call getLastUserConsentedLocation() for consent given location and getLastDataDownloadedLocation() for data downloaded location.
  • OTUserDefaultKeys.ottData that represents the entire server response is now removed.
    Complete server response will now be returned in the completion handler of OTPublishersHeadlessSDK.shared.startSDK().
    Applications can also use OTPublishersHeadlessSDK.shared.getDomainGroupData(), OTPublishersHeadlessSDK.shared.getDomainInfo() or OTPublishersHeadlessSDK.shared.getCommonData() to fetch stored necessary OT SDK Data.

iOS

Added

  • Added UX params for close button customization in Banner and Preference Center views.
    The font attributes in the UX params will be applied to close button only if the close button is represented in a text format.
    The textColor will be applied to both the text as well as the image in the close button depending on how it is represented.
    Recommended maximum value for borderRadius or borderWidth is 10 (giving values higher than this can make the UI look not so great).
    Recommended maximum value for fontSize is 25 (giving values higher than this can make the UI look not so great).
    _ Note: All the applications using UX params would need to update their UX params plist file to latest in order for UX params to work as expected (as we are changing the UX params plist in the SDK due to the close button customization).
    Added support for choosing the Vendor List journey.
    New delegate method getVendorListJourney has been added into UIConfigurator, and this has to be implemented to pass the journey type.
    showConfirmMyChoices and hideConfirmMyChoices are the two modes supported.
    hideConfirmMyChoices (default) - when set, user will be taken back to the SDK UI from where they came, Confirm My Choices button will not be visible in vendor list screen.
    _ showConfirmMyChoices - when set, SDK UI will be dismissed as it does today when clicked on Confirm My Choices.

Fixed

  • Fixed an intermittent issue where logo on banner would not appear during first time download of OT SDK data.
  • Fixed an issue where extra space showing between banner description and cookies policy link at Banner SDK UI.
  • Fixed an issue where UC Purposes was not shown when either title or description is empty.
  • Fixed an issue where the previously saved Google additional consent string for google vendors was retained in device storage even if the google vendors configurations were removed from an application and republished it.
  • Fixed an issue where Google vendors consent was changing with Allow All or Reject All button click even if the google vendors configurations were removed from an application and republished it.

tvOS

Added

  • Added support for Continue without Accepting option on banner UI. Whenever this is configured on server, SDK will show the Continue without Accepting text instead of the close icons on banner.
  • The text and the text color of the Continue without Accepting option is configurable in the template on the admin server.

Changed

  • Whenever Banner UI is shown, we will be setting the first action button (Accept All/Reject All/ Show Preferences/List Of Vendors) as the first focus item.

6.21.0

(2021-07-01)

Common (iOS & tvOS)

Changed

  • The error codes of the errors thrown by OT SDK have been changed with v6.21.0.
  • Previously we were throwing errors in OT SDK which did not follow a particular pattern and there was no categorization of errors.
  • Moving forward, OT SDK will throw internal errors that are categorized into two domains:
    - ManagerError - Represents the HeadlessSDK manager related errors in OT SDK.
    - NetworkError - Represents the network layer related errors in OT SDK.
  • Please refer to the README file for the detailed list of internal errors thrown by OT SDK.
  • Note: If you had custom implementation based on the error codes thrown by OT SDK, please revisit the implementation in your application and make the changes according to the new error codes.

Fixed

  • Fixed an issue where Legitimate Interest legal description showing even Allow Legitimate Interest toggle disabled at OneTrust UI.
  • Fixed an issue where tcstring sent with consent logging payload is not proper on giving consent from Preference center or Vendor list Confirm My Choices and on banner close.
  • Fixed an issue with tcString when the language code is empty or it is an advanced language.
  • Fixed an issue where sub-groups consent status are not getting updated same as Parent group consent status when user calls OTPublishersHeadlessSDK.shared.optOutOfSaleOfData() or OTPublishersHeadlessSDK.shared.optIntoSaleOfData().

iOS

Changed

  • Close button in Banner and Preference center views will only be dependent on Mobile Data if mobile data is supported on the corresponding OT server.
  • Removed setupUI support for UC Purposes Preference center. Changed the public method for showing UC Purposes UI from showConsentPurposesUI() to showConsentPurposesUI(_ viewController:)

Fixed

  • Removing the unnecessary whitespace when Banner logo is disabled.
  • Fixed an issue with UC Purposes not listed unless we touch the screen when the device orientation is changed.
  • Fixed an issue with close button image in Preference center screens.
  • Fixed blank screen issue on iPad and large screen iphones.

tvOS

Fixed

  • Fixed an issue where Preference Center table seperator view was showing lighter background.

6.20.0

(2021-06-14)

Common (iOS & tvOS)

Added

  • Added Support for Universal Consent Purposes.
    - Exposed public methods to initialize and render Universal Consent Purposes UI.
    - SDK will now render Universal Consent Purposes UI which populates Universal Consent Purposes as per the configurations done in OneTrust admin UI and log consent transactions on user interactions for the same.
  • Added setupUI method to render Universal Consent Purposes such that SDK will render Universal Consent Purposes.
    - App can call showConsentPurposesUI() method to force render the UCP as and when required.
  • Added support for ATT permission and CMP purposes/categories integration. Customers can now link CMP purposes/categories with ATT on OneTrust server.
    - Once this link is established, users will be prompted with ATT prompt whenever they try to perform a save action for the first time.
    - If ATT permission is not determined/ not allowed, by default the linked purposes/categories will be toggled off. User will not be able to toggle them on unless they change the ATT permission to Allowed.
    - If ATT permission is allowed, the user will be able to change the toggle status of the linked categories/purposes as usual.
    - ATT consent will be logged whenever OT SDK detects that the ATT permission has been changed to denied/restricted. We log even the linked ATT categories/purposes along with the actual ATT purpose.
    - Note: Whenever user changes the ATT permission from the iOS Settings App, the customer application will be killed. Upon relaunch of the application, it is recommended to re-download the data after this ATT permission change.

Fixed

  • Fixed the issue where CCPA purpose toggle was not working as expected when switching between locations.
  • Making sure that we use the IDFA title from the UX params when it is set.
  • Fixed the issue where IAB Vendor Details did not show up translated text.

iOS

Fixed

  • Making sure that the title and description in the ATT prompt are center aligned (iPhone and iPad).
  • Making sure that the cookie policy link does not overlap with the banner description when the policy link font is too big.

tvOS

Added

  • Added alphabetic search support at Vendor List UI for quick search for vendor.
  • Added vendor filter support based on Iab Category selection.

Fixed

  • Fixing the issue where ATT prompt description was getting truncated on tvOS.

6.19.0

(2021-05-20)

Common (iOS & tvOS)

Fixed

  • Removed the delay while presenting OT SDK UI. Making sure that we present OT SDK UI asynchronously on the main thread.
  • Fixed an issue where very 1st time reconsent or reconsent with template change doesn't load banner UI.

iOS

Added

  • Added support for parsing and saving the Universal consent purposes json coming down from server and saving it in SDK's storage.

Fixed

  • Fixed an issue where navigation bar background color not matching exactly with view background color for Preference Center UI.
  • Fixed an issue where Vendor List link at Banner and Policy Link at Preference Center was not transparent.
  • Fixed an issue with low resolution close button image at Banner and Preference Center UI.

tvOS

Fixed

  • Fixed an issue with close button focus on Banner UI with up swipe.

6.18.0

(2021-04-29)

Common (iOS and tvOS)

Changed

  • Adding performance metrics for the following flows (metrics will be logged as info logs):
    - Performance Metrics 1: Time taken for OTSDK startSDK data fetch.
    - Performance Metrics 2: Time taken for IAB vendors data fetch (applies to IAB template only).
    - Performance Metrics 3: Time taken for Google vendors data fetch (applies to IAB template only).
    - Performance Metrics 4: Time taken for the entire OTSDK startSDK process.

iOS Only

Added

  • Added support for Continue without Accepting option on banner and preference center UI. Whenever this is configured on server, SDK will show the Continue without Accepting text instead of the close icons on banner and preference center.
    - The text and the text color of the Continue without Accepting option is configurable in the template on the admin server.
  • Added real time UI update on Preference Center and Purpose Details views whenever an application updates the consent or legitimate interest of a purpose using OTSDK public APIs.

Fixed

  • Fixing the issue where the Purpose Details View was not triggering the event listener callbacks for change of Consent/Legit Interest statuses.
  • Triggering OTEventListener callback whenever vendor's legitimate interest status is changed from Vendor Details UI.

tvOS Only

Added

  • Added TCF 2.0 Vendor UI.
  • Added support for OTEventListener. Upon setting the event listener using OTPublishersHeadlessSDK.shared.addEventListener(_), applications will receive call backs on various OT SDK UI events.
    - Note: Right now, tvOS supports event listeners for only banner and preference center. Vendor list support will be added when the UI for vendor list is available on tvOS.

Fixed

  • Fixed the UX params being broken on tvOS.
  • Fixed the issue where clicking on menu button on the Apple TV Remote would not call completion handler of IDFA.

6.17.0

(2021-04-23)

Common (iOS and tvOS)

Fixed

  • Fixed an issue where the allSDKViewsDismissed and onVendorConfirmChoices callbacks are not called properly.
  • Fixed an issue where Vendor data was not being reset on reconsent enablement.
  • Fixed an issue that always active label in purpose deatils is not picking preference center Always active label color and text, when mobile template is enabled.
  • Fixed an issue with IDFA Pre and post Prompt text. SDK read the text from the template if the fields in the UX Params plist are empty.
  • Fixed an issue where Cookie Category title and Consent taking same customization in PurposeDetails.
  • Fixed an issue when Vendor List "Allow All" toggle changes position of vendors each time that it is pressed.
  • Fixed an issue with "Always Active" in Preference center is not picking the preference center links text color by default.
  • Fixed an issue where the IDFA logo would not show up in the UI if the logo download is still in progress while rendering the UI. We will now be refreshing the IDFA UI upon the completion of logo download to show the newly downloaded logo.
  • Fixed an issue where parent child relationship of categories are not obeying for consent and legitimate interest value.

Added

  • Added support for Google Vendors
    - If google vendors is setup in the template, we will now be fetching the google vendors and storing in the OT SDK.
    - OT SDK will now display the stored Google Vendors and their consent whenever Vendor List UI is presented.
    - The selected segment will inherit the theme of the Confirm My Choices button theme attributes.
    - The un-selected segment will inherit the theme of the Vendor Item title theme attributes.
    - We will now be storing AddtlConsent in UserDefaults (key: OTIABTCFKeys.iabTcf2AddtlConsent) whenever user provides consent. This will contain all the active google vendors which have consent enabled.
    - An AddtlConsent string contains the following three components:
    - Vendor List Version (Part 1): A specification version number, such as "1".
    - Separator (Part 2): A separator symbol "~".
    - Vendor Identifiers List (Part 3): A dot-separated list of user-consented Google Ad Tech Provider (ATP) IDs. Example: "1.35.41.101"

Changed

  • Changed behaviour on passing invalid language codes. SDK will no longer restrict initialization and fetching of data when an invalid language code is passed by the App.
    - SDK will return the data in the language code passed for a valid ISO language configured in OneTrust Admin UI.
    - If the language code passed is empty or not supported by the platform, then SDK will return the data in the default language configured for the template in OneTrust Admin UI.
  • The IDFA text in the UX params will be empty by default. If the application wants to have a custom text in the UX params, they would have to explicitly add it.
  • The OT SDK storage system has now changed.
    - We will be storing all the OT SDK data in a custom storage location (previously we were storing OT SDK data in standard UserDefaults).
    - Applications can get the values associated with the OT SDK data keys via the API OTPublishersHeadlessSDK.shared.getValue(forKey:). Applications SHOULD NEVER TRY TO ACCESS OT SDK DATA DIRECTLY FROM THE STANDARD USERDEFAULTS (instead use this API to retrieve OT SDK data).
    - Migration from standard UserDefaults to custom storage - On application launch, OT SDK will automatically be migrating the data stored from previous versions (in standard UserDefaults) to the custom storage. No changes required from application stand point for performing the migration.
    - Note: The IAB TCF data maintained by OT SDK will continue to reside in the standard UserDefaults to meet the IAB requirements.
  • Public API changes related to Vendors:
    - Adding VendorListMode as a parameter to all vendor related public APIs.
    - The default mode will be set to .iab in these APIs so that, these APIs will continue to work for apps that are already using them.
    - If customer app wants to deal with data related to google vendor, they can change the mode to .google.
  • Geolocation Public API changes:
    - Deprecated API: OTPublishersHeadlessSDK.shared.getUserLocation() has been marked deprecated as the name could be misleading. This method will be completely removed in 6.19.
    - New Public API: OTPublishersHeadlessSDK.shared.getLastUserConsentedLocation() has been been introduced. This represents the last user consented location. If user has never provided consent, this will return a nil value.
    - New Public API: OTPublishersHeadlessSDK.shared.getLastDataDownloadedLocation() has been been introduced. This represents the last location where the OT SDK data was downloaded. If user has never downloaded data, this will return a default geolocation.
  • From 6.17 onwards, we will be hiding the Not Now/Cancel button on the IDFA Pre-Prompt screen for both iOS and tvOS.

iOS Only

Added

  • Mobile Data Font keys coming down as part of OT SDK data download response, will now be honored in Banner and Preferemce center views for all UI elements that has text data.

tvOS Only

Added

  • Added support for OTEventListener. Upon setting the event listener using OTPublishersHeadlessSDK.shared.addEventListener(_), applications will receive call backs on various OT SDK UI events.
    - Note: Right now, tvOS supports event listeners for only banner and preference center. Vendor list support will be added when the UI for vendor list is available on tvOS

Fixed

  • Fixed the UX params being broken on tvOS.
  • Fixed the issue where clicking on menu button on the Apple TV Remote would not call completion handler of IDFA.

6.16.0

(2021-03-23)

Common (iOS and tvOS)

Added

  • Resetting the IAB purposes when reconsent or auto timer expiry is triggered.
  • Fixed the issue with Banner resurfacing when SDK migrates from 6.12.0 (or lower) to current version.
  • Fixed issue where vendor Legitimate Interests were not syncing correctly the very first time in case of Profile sync.
  • Fixed an issue with discrepancy in category toggle color and purpose toggle color when set from OT Admin UI.
  • Fixed an issue with default Active toggle color becoming Black now, when no color is given in mobile template.

iOS Only

Added

  • Mobile Data Font keys coming down as part of OT SDK data download response, will now be honored in Banner and Preferemce center views for all UI elements that has text data.

tvOS Only

Added

  • TCF 2.0 Preference Center UI redesign.

Fixed

  • Fixed the UX params being broken on tvOS.
  • Fixed the issue where clicking on menu button on the Apple TV Remote would not call completion handler of IDFA.

6.15.0

(2021-03-01)

Common (iOS and tvOS)

Added

  • Cross Device now supports IAB TCF2 Templates. We now decode the TC String and overwrite the user's Consent and Legitimate Interests for Purposes and Vendors.
  • Xcode 12.4 version support

Changed

  • Public API for downloading of OT SDK has now changed:
    • Introduced new public method OTPublishersHeadlessSDK.shared.startSDK(storageLocation:domainIdentifier:languageCode:params:completionHandler:).
      • This method will return an object OTResponse which will contain the server response, error (if any) and the status of the server call.
    • Added a deprecation message to OTPublishersHeadlessSDK.shared.initOTSDK(storageLocation:domainIdentifier:languageCode:params:completionHandler:).
      • This method will be removed completely in a couple of releases (6.18).
      • This method will be replaced by OTPublishersHeadlessSDK.shared.startSDK(storageLocation:domainIdentifier:languageCode:params:completionHandler).
  • Public API to get OT SDK Data:
    • Added a deprecation message to OTPublishersHeadlessSDK.shared.getOTSDK().
      • This method will be removed completely in a couple of releases (6.18).
      • Complete server response will now be returned in the completion handler of startSDK(storageLocation:domainIdentifier:languageCode:params:completionHandler:).
      • Applications can also use getDomainGroupData(), getDomainInfo() or getCommonData() to fetch stored necessary OT SDK Data.

Removed

  • We have removed the following User Defaults Key - OTUserDefaultsKeys.ottData. This variable is no longer available, will be made inaccessible in 6.16. USING THIS WILL NOT RETURN EXPECTED RESULTS. The complete server response will now be returned in the completion handler of OTPublishersHeadlessSDK.shared.startSDK(storageLocation:domainIdentifier:languageCode:params:completionHandler:). Applications can also use OTPublishersHeadlessSDK.shared.getDomainGroupData(), OTPublishersHeadlessSDK.shared.getDomainInfo() or OTPublishersHeadlessSDK.shared.getCommonData() to fetch stored necessary OT SDK Data.

Fixed

  • Safety check has been added to OTPublishersHeadlessSDK.shared.addEventListener(eventListener:).
    • Applications should always pass an object that conforms to OTEventListener.
    • Any object passed will always be held a weak reference so that memory leaks will not occur.
  • OT SDK will now be triggering the sdk view shown UI events via OTEventListener w.r.t showing OT SDK Views (Banner, Preference Center and Vendor List) only after these views are visible in the view hierarchy.
    • The event that represent OT SDK views shown are - onShowBanner, onShowPreferenceCenter and onShowVendorList.
  • Making sure we clear IAB data on auto re-consent expiry detection in OTPublishersHeadlessSDK.shared.shouldShowBanner evaluation.

iOS Only

Added

  • Added back support for iOS 9 & 10.
    • iOS 9 & 10 will be supported by XCFramework downloaded from the OneTrust portal.

Changed

  • Mobile Data JSON coming down as part of OT SDK data download response, will now be honored in Banner View. The following items will be honored:
    • General: Banner height ratio, show Logo, Banner Logo (will be the one that will be always used in Banner View).
    • Title: Show title, Text alignment and Title text.
    • Description: Show description, Text alignment and Description text.
    • Additional Description: Show Additional description, Text alignment and Additional Description text.
    • Privacy Policy Link: Text alignment.
    • Buttons: Border Radius.
  • Mobile Data JSON coming down as part of OT SDK data download response, will now be honored in PreferenceCenterView. The following items will be honored:
    • General: show Logo, Preference center Logo (will be the one that will be always used in Preference Center View).
    • Title: Show title, Text alignment and Title text.
    • Description: Show description, Text alignment and Description text.
    • Privacy Policy Link: Text alignment.
    • Buttons: Border Radius.
    • Purpose list: Text Alignment
    • Purpose list item: Always Active Label Color

Fixed

  • Moving forward we will be looking at ThirdPartyCookieListText instead of PCFirstPartyCookieListText for displaying the Cookie List text.
  • Making sure we take into consideration the search text as well, after the filter selection has been made for SDK List.
  • Fixed an issue with additional cells at bottom of preference center view.
  • Fixed an issue where text alignment was not being honored for vendor list and policy links in Banner view.

tvOS Only

Fixed

  • Applying border color for 'Cookies Settings' button from OneTrust admin UI.
  • Applying same background color for 'Purpose List' for both focused and unfocused state from OneTrust admin UI.
  • Disabled vertical bounce for Description UI.
  • Support for TV remote MENU button and ESC key action.
  • Applying description text scroll with TV remote top to buttom swipe.

6.14.0

(2021-02-08)

Common

Added

  • Exposed a public method to get consent calues for passing to mobile WebViews.

Changed

  • Showing/Hiding of App Tracking Transparency pre/post prompts:
    We will show the ATT pre-prompt only if it has been enabled on the Admin UI. If the pre-prompt is not enabled on OT Admin and the application tries to call showConsentUI(.idfa), we will not show the ATT pre-prompt. Instead, an error will be logged, asking to configure the pre-prompt on the Admin UI.
    We will be showing the IDFA post-prompt only if it has been enabled on the Admin UI (if the post-prompt is not enabled on OT Admin and the application tries to call showConsentUI(.idfa), we will not show the ATT post-prompt. Instead, an error will be logged, asking to configure the post-prompt on the Admin UI.

Fixed

  • Fixed an issue where shouldShowBanner was not being checked when calling setupUI() for a Preference Center.

iOS

Changed

  • On the Purpose Details UI:
    * The parent category Name, Consent and Legit Interest will always be fixed at the top while the rest of the items in the view will be scrollable.
  • On the Vendor List and SDK List UI:
    Applying Preference Center Text Color to Filter Icon (when filter not applied).
    Applying Preference Center Button Color to Filter Icon (when filter applied) and Filter selection.

Fixed

  • Fixed the placement issue with IAB Vendors And Full Legal Text Links. Now we show either in the top or bottom based on settings in Admin UI.
  • Fixed an issue with category detail toggle gets cut off on small devices, jumps on first toggle click.
  • Fixed UI issue in Purpose Details View when the description for a category is empty.

tvOS

Changed

  • SDK UI refactor for tvOS:
    Adopted Template Styling Configurations from OneTrust admin UI settings.
    Support for configuring texts for toggle status and category list titles for Preference Center view for tvOS.
    * Application will now be able to configure text for these fields in the OTT section of OneTrust admin UI.

6.13.0

(2021-01-18)

Added

  • Support for Automatic Reconsent computed based on the reconsent frequency configured in Admin Console.
  • Exposed public method to set Custom Data Elements to Consent Logging Payload.
  • Support for applying styles to links across SDK views.
  • Added new keys to plist to customize link properties (underlined, color) on Banner and Preference Center views.

Fixed

  • Fixed an issue where button and link texts on Banner were truncated when long text was configured.
  • Fixed an issue with Preference Center HTML anchor tag parsing

6.12.0

(2020-12-28)

Added

  • Exposed public method to dismiss SDK UI.
  • Added new properties to Vendor list UI.
  • Vendor details will now show details about the lifespan of cookies and the device storage disclosure information if applicable.
  • Introducing IDFA support for iOS and tvOS:
  • App Tracking & Transparency Pre/Post Prompts now production ready with inheriting configurations from Admin UI and Consent Logging for new App Tracking Transparency device permission category. No longer a Beta feature.
  • Consent Logging support has been added for IDFA consent.

Fixed

  • Fixed an issue where app crashes on rotating the device after changing the banner height ratio.
  • Fixed an issue with multiple HTML text configured for the Banner.

Changed

  • CCPA initialization and set up
  • Removed initializeCCPA() from SDK. Application will now have to configure CCPA category and the required parameters in OneTrust admin UI and publish it. SDK will initialize CCPA on calling initOTSDKData() and generate US privacy string based on the configuration done in OneTrust admin UI. Please refer to the SDK documentations for more details.

6.11.0

(2020-12-07)

Added

  • A public cache has been added to access and modify Data subject identifier.
  • Application will now be able to customize the UI properties of search bar in Vendor List and SDK LIst views by passing appropriate parameters to SDK.
  • Update positions for "List of IAB Vendors" and "View Full Legal Text" links when IAB Stack
  • For IAB Stack, links will appear just once either in the top or bottom based of settings. Not every child will have it now.
  • Introducing Banner UI for Apple TV.
  • Introducing App Tracking & Transparency support for iOS and tvOS apps (Beta feature).

Fixed

  • Fixed an issue with black lines separating purposes/categories. Now its customisable and by default there will be no lines.
  • DP Description for IAB2 Templates now honors html tags.
  • Fixed an issue that caused multiple banners to pile up in some situations.

6.10.0

(2020-11-18)

Added

  • Minimum Deployment target of iOS and tvOS Native framework has been moved to iOS 11 (iOS OT Native SDK will now be supported for iOS 11 or above).
  • Support for SDK UI Customization
  • Application will now be able to customize the UI properties by passing appropriate parameters to SDK
  • Applications can conform to the uiConfigurator in OTPublishersHeadlessSDK class in order to customize the UI
  • Introduced new Preference Center UI for Apple TV
  • SDK will now render the new Preference Center UI on Apple TV when showPreferenceCenterUI() is called

Fixed

  • Fixed an issue with disclosure icon color in Preference Center and Vendor List UI
  • Fixed an issue where the consent values were reset to default ones on changing the device language and re-initializing the SDK
  • Minor UI fixes related to the positioning and visibility of items in layout based on the configurations done in OneTrust admin UI

6.9.1

(2020-11-09)

Fixed

  • Changing the language code for initOTSDKData() no longer clears User's previously given consent
  • Preference Center UI now hides the Accept All button when text is blank
  • Preference Center UI now hides the Reject All button when text is blank
  • Preference Center UI IAB Vendor List link now positioned directly below PC Description text and directly above Accept All / Reject All button row
  • Preference Center UI no longer has extra spacing at bottom of PC Description when using HTML tags
  • Preference Center UI no longer increases the size of HTML tags when toggles are selected
  • Purpose Details UI now respects the Hide/Show SDK List setting
  • Purpose Details UI now respects the IAB User Friendly Text setting
  • Purpose Details UI now respects the Links Position setting
  • SDK Details UI now honors the Hide/Show SDK Description setting

6.9.0

(2020-10-26)

Added

  • Exposed public method for saving consent values with the corresponding interaction type on various user interactions.
    * We recommend you call the new method saveConsent(type:) and pass appropriate interaction type instead of calling acceptAll,rejectAll(),saveDefaultConsentValues() and saveConsentValue() methods.These methods will be deprecated from future release and eventually will get removed from SDK.
  • Support for Advanced Analytics when it is enabled in OneTrust console.
    * SDK will now log consent transactions along with the interaction type and country where the user has given consent on when the Advanced Analytics feature is enabled for a category configured in your application.

Fixed

  • Minor UI fixes with respect to layout.
  • Fixed an issue where parent - subgroup logic was not obeyed on a re-consent scenario when an IAB category was configured as a subgroup of the Cookie category.

6.8.0

(2020-10-05)

Added

  • Support for HTML content
    * SDK will now support the HTML text configured for the Banner description, Banner additional description, Banner DPD Title, Preference Center description, Group / Category descriptions and SDK descriptions.
  • Exposed public method to determine if Banner/Preference Center was shown to user at least once.
  • Exposed public method to configure the height ratio of Banner rendered by SDK.

Fixed

  • Fixed an issue where TC string was encoded incorrectly for an IAB template, when restrictions applied on Vendors.
  • Fixed an issue where cookie settings button on banner was not rendered as per the style configured on OneTrust admin UI.
  • Fixed an issue with orientation.

6.7.0

(2020-09-14)

Added

  • Support for Cross Device Profile Sync
    * Exposed public methods to set parameters for enabling profile syncing across various devices.
  • Support for IAB TCF Publisher Restrictions.
    * SDK will now include publisher restrictions for encoding TC String and save it to User Defaults.

6.6.0

(2020-08-24)

Added

  • Support for Cross Device Profile Sync
    • Exposed public methods to set parameters for enabling profile syncing across various devices.
  • Support for IAB TCF Publisher Restrictions.
    • SDK will now include publisher restrictions for encoding TC String and save it to User Defaults.

Fixed

  • Fixed an issue where shouldShowBanner method was returning incorrect values on iOS versions below 13.

6.5.0

(2020-08-03)

Added

  • Exposed public method to enable creation of consent logging profile.
  • Exposed public method to get vendor specific details for passed vendor identifier.

6.4.0

(2020-07-13)

Added

  • Support for tvOS Framework.
  • Support for IAB CCPA.
  • Exposed public methods to initialize and render Banner / Preference center UI.
  • Exposed listeners to notify application regarding UI interactions.
  • Application can pass custom geolocation parameters while initializing SDK.

Changed

  • getUserLocation will return country code and region code of the user's location.
    • If user has already given consent, this method will return the country code and region code of last consent given location.
  • Changed the signature for initOTSDKData method.
    • This method will optionally allow application to pass custom geolocation parameters.

6.3.0

(2020-06-22)

Added

  • Support for XCFramework.

  • Support for CocoaPods.

  • Support for auto-removal of simulator architecture(s).

    • Applications will not have to manually remove the simulator architecture(s) before uploading to App Store.
  • Support for bitcode disabled framework.

  • Exposed public method to return dictionary containing all keys required to render Banner.

  • Exposed public method to return dictionary containing all keys required to render Preference Center.

  • Exposed public function for setting only Data Subject Identifier.

  • SDK will not trigger consent logging on calling this method, but will save the new identifier for subsequent consent transactions.

Changed

  • getOTTData has been renamed to initOTSDKData.
    • initOTSDKData will only return boolean status and error code in completion block.

6.2.0

(2020-06-01)

Added

  • Support for Xcode 11.5.
  • IAB 2.0 Support. SDK exposed public methods to update and query values related to IAB TCF purposes.
    • Exposed method to retrieve all active vendors configured for an application ID.
    • Exposed methods to update and query values of Consent and Legitimate Interest for a particular Vendor.
    • Exposed methods to update and query values of Consent and Legitimate Interest for an IAB purpose.
    • Consent Transactions will be logged for IAB purposes whenever user interacted with the banner.
    • SDK will encode updated consent values, generate TCString and save it in User Defaults whenever consent values are saved.

Changed

  • updateConsentValue has been renamed to updatePurposeConsent.
  • getPreferenceData has been renamed to getOTSDKData.

Removed

  • Xcode 10.3 is no longer supported.

6.1.0

(2020-05-11)

Added

  • Exposed public method to clear all the data saved in SDK.
  • Exposed public method to handle close button in Preference Center.
  • Exposed public method to handle close button in Banner.
  • Exposed public method to determine if the banner needs to be displayed for the user's geolocation.

6.0.0

(2020-04-20)

Added

  • Exposed public method to set Data Subject Identifier to SDK.
  • This SDK feature enables you to track all the consent transactions made for known users in OneTrust environment.

5.15.0

(2020-03-30)

Added

  • Exposed public method for querying consent for SDKs.
  • Exposed public method for querying consent for Categories.