iOS & tvOS SDK
A new, rearchitected version of the iOS CMP SDK has been released as of 202504.1.0. For more information, see OneTrust Next Generation CMP SDKs.
Important: Apple requires apps submitted to the App Store on or after April 28, 2026 to be built with Xcode 26 or later and the iOS 26 SDK or later. See here for more information.
To support this requirement, upgrade to OneTrust SDK 202605.1.0 or later. Building with the iOS 26 SDK does not change your app’s minimum deployment target or require end users to upgrade to iOS 26. See here for more information.
Supported Platforms
Tech Stack Overview
| Specifications | Details |
|---|---|
| Language Version | Swift 5.1 |
| Desktop OS | Mac OS 10.14.4+ (Mojave) |
| Build Dependencies | Xcode CommandLine tools |
| Supported iOS Version | iOS 15+ |
| Supported tvOS Version | tvOS 15+ |
| SDK Size | See iOS Sizes section below |
| Compression Tools | Not compressed |
| External Dependencies, 3rd Party Frameworks, and SDK Libraries/Components | N/A |
| Encryption | N/A |
| 3rd Party Frameworks | N/A |
SDK Size
| SDK Version | Uncompressed File Size |
| OTPublishersHeadlessSDK-11.7 | BitcodeDisabled: 8.4 MB, BitcodeDisabled-Test: 12.3 MB, BitcodeEnabled: 17.4 MB, BitcodeEnabled-Test: 21.5 MB |
| OTPublishersHeadlessSDK-12.3 | BitcodeDisabled: 8.8 MB, BitcodeDisabled-Test: 12.8 MB, BitcodeEnabled: 18.7 MB, BitcodeEnabled-Test: 22.5 MB |
| OTPublishersHeadlessSDK-XCFramework | 17.6 MB |
Framework Options
Things to Know
- For each framework, we offer support for both Bitcode Enabled/Disabled and x86_64 simulator architectures included and removed.
- These options are available as separate framework downloads from the OT admin, but is not available through Cocoapods. The only exception is the XCFramework, which is offered via Cocoapods.
- To simplify, we are representing each of these separate framework support options as a single framework row on the table below. Please contact your OneTrust representative if you have any questions.
| Framework | Bitcode Support | Architectures | Build System | Download Option | XCode Support |
|---|---|---|---|---|---|
| XCFramework | Bitcode Enabled ✅ Bitcode Disabled ✅ | (x86_64, arm64) Simulators Included ✅ (arm64, armv7) Devices Only ✅ | New Build System ✅ | Cocoapods ✅ SPM ✅ OT Download ✅ | 16.x ✅ 15.x ✅ |
Frequently Asked Questions (FAQ)
The following responses are responses to frequently asked questions (FAQ) about the iOS & tvOS SDK. The OneTrust team continuously monitors these inquiries and will make additional FAQs available as they are identified.
- What is the minimum deployment target supported for OneTrust SDK?
Starting 202607.1.0, the minimum deployment target is iOS 15.0 and tvOS 15.0. The minimum Xcode version is Xcode 26.x. If you need to point to older iOS/tvOS SDK versions, please point to a SDK version prior to 202607.1.0. - Is the SDK encrypted or obfuscated in any way?
- Encryption: The OneTrust SDK is not encrypted.
- Obfuscation: The OneTrust SDK does expose a set of Public APIs which your apps can use to enable CMP functionality. The rest of the internal code is not accessible.
- Does the SDK use third-party libraries?
No, the SDK does not use third-party libraries. - Does the SDK have external dependencies?
No, the SDK does not have external dependencies. - Does the SDK work with SDK aggregators such as mParticle?
No, the SDK does not work with SDK aggregators. - Does the SDK use open-source libraries?
No, the SDK does not use open-source libraries. - Does the SDK support Objective-C?
OneTrust does not expose our public APIs to Objective-C by default. If your app is written in Objective-C, you can write an interface and access our Swift APIs from Objective-C. See the example below:
@objc extension OTPublishersHeadlessSDK {
@objc(renameProfileFrom:to:completion:)
func objc_renameProfile(from currentProfileID: String? = nil,
to newProfileID: String,
completion:@escaping(Bool) -> Void) {
renameProfile(from: currentProfileID, to: newProfileID, completion: completion)
}
}Updated 1 day ago