iOS & tvOS SDK

📘

A new, rearchitected version of the CMP SDKs has been released. For more information, see OneTrust Next Generation CMP SDKs.

For previous versions of the CMP SDK (<202505.1.0), see iOS & tvOS SDK (Legacy).

Supported Platforms

Tech Stack Overview

SpecificationsDetails
Language VersionSwift 5.1
Desktop OSMac OS 10.14.4+ (Mojave)
Build DependenciesXcode CommandLine tools
Supported iOS VersioniOS 12+
Supported tvOS VersiontvOS 12+
SDK SizeSee iOS Sizes section below
Compression ToolsNot compressed
External Dependencies, 3rd Party Frameworks, and SDK Libraries/ComponentsN/A
EncryptionN/A
3rd Party FrameworksN/A

SDK Size

SDK VersionUncompressed File Size
OTPublishersHeadlessSDK-11.7BitcodeDisabled: 8.4 MB, BitcodeDisabled-Test: 12.3 MB, BitcodeEnabled: 17.4 MB, BitcodeEnabled-Test: 21.5 MB
OTPublishersHeadlessSDK-12.3BitcodeDisabled: 8.8 MB, BitcodeDisabled-Test: 12.8 MB, BitcodeEnabled: 18.7 MB, BitcodeEnabled-Test: 22.5 MB
OTPublishersHeadlessSDK-XCFramework17.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.
FrameworkBitcode SupportArchitecturesBuild SystemDownload OptionXCode Support
XCFrameworkBitcode 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.

  1. What is the minimum deployment target supported for OneTrust SDK?
    Starting in 202505.1.0, the minimum deployment target is iOS 12.0 and tvOS 12.0. The minimum Xcode version is 15.x. If you need to support older iOS/tvOS versions, please point to an SDK version prior to 202505.1.0.
  2. Is the SDK encrypted or obfuscated in any way?
    1. Encryption: The OneTrust SDK is not encrypted.
    2. 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.
  3. Does the SDK use third-party libraries?
    No, the SDK does not use third-party libraries.
  4. Does the SDK have external dependencies?
    No, the SDK does not have external dependencies.
  5. Does the SDK work with SDK aggregators such as mParticle?
    No, the SDK does not work with SDK aggregators.
  6. Does the SDK use open-source libraries?
    No, the SDK does not use open-source libraries.
  7. 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)
    }
}