Mobile & OTT/CTV SDKs
Natively written SDKs and plugins for collecting consent on mobile and ott/ctv applications. They each provide configurable Banner, Preference Center, and Vendor List user interfaces and functions for helping collect and manage end-user consent.
Platforms Supported
Implementation Approaches
Approach | Description |
---|---|
SDK + OneTrust UI (Recommended) | Description Embed the OneTrust SDK into your app and use the SDK's methods to manage pre-built user interfaces and user consent. Pros - Lowest effort to implement - Simple to scale for many apps - Easier to change over timeCons - n/a |
SDK + BYOUI | Description Embed the OneTrust SDK into your app and use the SDK's methods to build your own user interfaces and manage user consent. Pros - SDK logic and methods kept same - Can scale to many apps depending how UI is deliveredCons - Larger initial implementation because UI logic and layouts built from scratch - Not as easy to change over time |
Mobile SDK Features
Feature | Description | iOS | Android | Unity | Xamarin | React Native | Flutter | Cordova | Ionic |
---|---|---|---|---|---|---|---|---|---|
App Scanning | Scan apps to identify and categorize SDKs. | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
Sample App | OneTrust provided demo app to better understand how to implement the SDK. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
OT Provided UI | OneTrust provided UI templates, great for faster implementations or teams with fewer developer resources. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Configurable UI Params | Ability to pass in custom UI parameters via a .plist or .json file to further customize your interface. | ✅ | ✅ | N/A | N/A | ✅ | ✅ | ✅ | ✅ |
Custom Fonts | Ability to render the Banner and Preference Center with a custom font. | ✅ | ✅ | N/A | N/A | iOS Only | iOS Only | iOS Only | iOS Only |
Supports BYOUI (Build Your Own UI) | Some teams wish to build their own UI for maximum flexibility and control, for those teams we provide SDK public methods that make it easier to work with the data. | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ |
UI Methods | |||||||||
Should Show Banner | A OneTrust computed property and method to decide if a banner/notice should be displayed to a User. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Setup UI | A method that first check shouldShowBanner, and if true, will show either a OneTrust provided Banner or Preference Center UI to the user. | ✅ | ✅ | N/A | N/A | ✅ | ✅ | ✅ | ✅ |
Show Banner | A method that will always show a OneTrust provide Banner UI to the user. | ✅ | ✅ | N/A | N/A | ✅ | ✅ | ✅ | ✅ |
Show Preference Center | A method that will always show a OneTrust provide Preference Center UI to the user. | ✅ | ✅ | N/A | N/A | ✅ | ✅ | ✅ | ✅ |
User Save Actions | |||||||||
Accept All | A method that will update and save a User’s choice as Opted In for all SDK categories. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Reject All | A method that will update and save a User’s choice as Opted Out for all SDK categories. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Close Banner | A method that will update and save a User’s choice as the consent defaults depending on geolocation rules setup in OneTrust Admin UI. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Confirm User Choices | A method that will update and save a User’s granular choices for each category depending on their interaction with the Preference Center. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Template Data Support | |||||||||
Banner / Notice | Provide data to build a Banner UI for GDPR, CCPA, and IAB TCF 2.0 use cases. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Preference Center | Provide data to build a Preference Center UI for GDPR, CCPA, and IAB TCF 2.0 use cases. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Vendor List (IAB TCF2) | Provide data to build a Vendor List UI for IAB TCF 2.0 use cases. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Vendor Details (IAB TCF2) | Provide data to build a Vendor Details UI for IAB TCF 2.0 use cases. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
SDK List w/ Name & Descriptions | Provide data to build a SDK List UI with name and description text. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Custom Branding and Logo | The SDK supports passing properties for customizing branding colors and logo files. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Translated Text | The SDK supports text translations across any number of languages. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Publishers | |||||||||
Re-Consent on Publish | When publishing new settings to the SDK, this forces users to re-consent to a banner/notice by setting shouldShowBanner to true. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Publish Changes to Production Apps | Publish changes to the SDK over time without having to re-submit the application to the app stores. Note: This will only publish template and consent model settings. SDK enhancements, optimizations, and bug fixes will require updating to the latest SDK and re-submitting to the app stores. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
IAB TCF 2.2 TC String | The SDK supports encoding an IAB TCF 2.2 consent string and sets the TC Data to local disk. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
IAB CCPA US Privacy String | The SDK supports writing the IAB CCPA USP String based on if a California based user has seen a notice and has exercised their right to opt out of the sale of personal data. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
IAB GPP | The SDK supports the GPP framework and GPP strings. | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
Cross Device Profile Syncing | The SDK supports passing a known user’s consent settings across multiple applications and websites. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Record Keeping | |||||||||
Receipt Logging | The SDK supports logging a consent receipt of each user’s interaction to OneTrust. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Test/Production Receipts | The SDK supports separating the receipts generated from test SDK Ids from the production receipts generated by actual app users. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Receipt Dashboards | The SDK sends data in a way that can be reflected in reporting dashboards on the OneTrust platform. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
User Profile Creation | The SDK supports the creation and update of a user profile in the Universal Consent module. This is required to support Cross Device Profile Syncing. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Retrieve User GUID | Ability to programmatically retrieve the OneTrust-assigned GUID for anonymous users in order to look up their consent receipts in the OneTrust portal. | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
User Profile Dashboards | The SDK sends data in a way that can be reflected in a user profile dashboard. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
CTV SDK Features
Feature | Description | Apple TV | Android TV | Fire TV | Roku | Samsung TV | LG TV |
---|---|---|---|---|---|---|---|
App Scanning | Ability to scan the application file to automatically identify and categorize 3rd party SDKs. | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
Demo App | OneTrust provided demo app to better understand how to implement the SDK. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
OneTrust Provided UI | OneTrust provided UI templates, great for faster implementations or teams with fewer developer resources. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Supports BYOUI (Build Your Own UI) | Some teams wish to build their own UI for maximum flexibility and control, for those teams we provide SDK public methods that make it easier to work with the data. | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
UI Methods | |||||||
Should Show Banner | A OneTrust computed property and method to decide if a banner/notice should be displayed to a User. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Setup UI | A method that first check shouldShowBanner, and if true, will show either a OneTrust provided Banner or Preference Center UI to the user. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Show Banner | A method that will always show a OneTrust provide Banner UI to the user. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Show Preference Center | A method that will always show a OneTrust provide Preference Center UI to the user. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
User Save Actions | |||||||
Accept All | A method that will update and save a User’s choice as Opted In for all SDK categories. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Reject All | A method that will update and save a User’s choice as Opted Out for all SDK categories. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Close Banner | A method that will update and save a User’s choice as the consent defaults depending on geolocation rules setup in OneTrust Admin UI. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Confirm User Choices | A method that will update and save a User’s granular choices for each category depending on their interaction with the Preference Center. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Template Data Support | |||||||
Banner / Notice | Provide data to build a Banner UI for GDPR, CCPA, and IAB TCF 2.0 use cases. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Preference Center | Provide data to build a Preference Center UI for GDPR, CCPA, and IAB TCF 2.0 use cases. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Vendor List (IAB TCF2) | Provide data to build a Vendor List UI for IAB TCF 2.0 use cases. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Vendor Details (IAB TCF2) | Provide data to build a Vendor Details UI for IAB TCF 2.0 use cases. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
SDK List w/ Name & Descriptions | Provide data to build a SDK List UI with name and description text. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Custom Branding and Logo | The SDK supports passing properties for customizing branding colors and logo files. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Translated Text | The SDK supports text translations across any number of languages. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Publishers | |||||||
Re-Consent on Publish | When publishing new settings to the SDK, this forces users to re-consent to a banner/notice by setting shouldShowBanner to true. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Publish Changes to Production Apps | Publish changes to the SDK over time without having to re-submit the application to the app stores. Note: This will only publish template and consent model settings. SDK enhancements, optimizations, and bug fixes will require updating to the latest SDK and re-submitting to the app stores. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
IAB TCF 2.2 TC String | The SDK supports encoding an IAB TCF 2.2 consent string and sets the TC Data to local disk. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
IAB CCPA USP String | The SDK supports writing the IAB CCPA USP String based on if a California based user has seen a notice and has exercised their right to opt out of the sale of personal data. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
IAB GPP | The SDK supports the GPP framework and GPP strings. | ✅ | ✅ | ✅ | ❌ (planned for 202403.1.0) | ❌ (planned for 202402.1.0) | ❌ (planned for 202402.1.0) |
Cross Device Profile Syncing | The SDK supports passing a known user’s consent settings across multiple applications and websites. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Record Keeping | |||||||
Receipt Logging | The SDK supports logging a consent receipt of each user’s interaction to OneTrust. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Test/Production Receipts | The SDK supports separating the receipts generated from test SDK Ids from the production receipts generated by actual app users. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Receipt Dashboards | The SDK sends data in a way that can be reflected in reporting dashboards on the OneTrust platform. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
User Profile Creation | The SDK supports the creation and update of a user profile in the Universal Consent module. This is required to support Cross Device Profile Syncing. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
User Profile Dashboards | The SDK sends data in a way that can be reflected in a user profile dashboard. | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Updated 4 months ago
What’s Next