> ## Documentation Index
> Fetch the complete documentation index at: https://developer.onetrust.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 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

[block:parameters]
{
  "data": {
    "h-0": "Mobile",
    "h-1": "OTT / CTV",
    "0-0": "[Android](https://developer.onetrust.com/onetrust/docs/android-sdk-next-gen)  \n[iOS](https://developer.onetrust.com/onetrust/docs/ios-tvos-sdk-next-gen)  \n[MAUI and Unity](https://developer.onetrust.com/onetrust/docs/maui-and-unity-sdk-new)  \n[React Native](https://developer.onetrust.com/onetrust/docs/react-native)  \n[Flutter](https://developer.onetrust.com/onetrust/docs/flutter)  \n[Cordova](https://developer.onetrust.com/onetrust/docs/cordova)  \n[Ionic](https://developer.onetrust.com/onetrust/docs/ionic)",
    "0-1": "[Apple TV](https://developer.onetrust.com/onetrust/docs/ios-tvos-sdk-next-gen)  \n[Android TV](https://developer.onetrust.com/onetrust/docs/android-sdk-next-gen)  \n[Fire TV](https://developer.onetrust.com/onetrust/docs/android-sdk-next-gen)  \n[Roku](https://developer.onetrust.com/onetrust/docs/roku-new)  \n[Samsung TV](https://developer.onetrust.com/onetrust/docs/tizen-and-webos-sdk-new)  \n[LG TV](https://developer.onetrust.com/onetrust/docs/tizen-and-webos-sdk-new)"
  },
  "cols": 2,
  "rows": 1,
  "align": [
    "left",
    "left"
  ]
}
[/block]

## Implementation Approaches

[block:parameters]
{
  "data": {
    "h-0": "Approach",
    "h-1": "Description",
    "0-0": "SDK + OneTrust UI  **(Recommended)**",
    "0-1": "**Description**  \nEmbed the OneTrust SDK into your app and use the SDK's methods to manage pre-built user interfaces and user consent.  \n  \n**Pros**  \n  \n- Lowest effort to implement\n\n- Simple to scale for many apps\n\n- Easier to change over time**Cons**\n\n- n/a",
    "1-0": "SDK + BYOUI",
    "1-1": "**Description**  \nEmbed the OneTrust SDK into your app and use the SDK's methods to build your own user interfaces and manage user consent.  \n  \n**Pros**  \n  \n- SDK logic and methods kept same\n\n- Can scale to many apps depending how UI is delivered**Cons**\n\n- Larger initial implementation because UI logic and layouts built from scratch\n\n- Not as easy to change over time"
  },
  "cols": 2,
  "rows": 2,
  "align": [
    "left",
    "left"
  ]
}
[/block]

## Mobile SDK Features

> 📘
>
> Our mobile app scanner can perform scans of iOS and Android apps built with the React Native framework. However, it will only fetch iOS/Android libraries. React Native libraries are not supported.

| Feature                            | Description                                                                                                                                                                                                                                                                                       | iOS | Android | Unity | MAUI | 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.                                                                                                                                                                                                                    |     ✅    |      ✅     |    ✅    |              ✅              |              ✅              |              ✅             |