--- title: "XCFramework Integration" slug: "mapp-intelligence-ios-sdk-v5-xcframework-integration" updated: 2026-04-30T12:03:28Z published: 2026-04-30T12:03:28Z canonical: "docs.mapp.com/mapp-intelligence-ios-sdk-v5-xcframework-integration" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.mapp.com/llms.txt > Use this file to discover all available pages before exploring further. # XCFramework Integration Since version 5.1.0, the Mapp Intelligence iOS SDK can be distributed as an Apple **XCFramework** in addition to CocoaPods and Swift Package Manager. This page describes when to use the XCFramework and how to integrate it manually. --- ## When to use the XCFramework - You integrate the SDK in environments that do not consume CocoaPods or Swift Package Manager directly — for example, **React Native**, **Flutter**, or **Capacitor** plugins that vendor binary frameworks. - Your build setup needs a single binary that bundles multiple architectures (device + simulator, arm64 + x86_64) into one artifact. - You want to avoid pulling source dependencies during the application build. > [!NOTE] > For most native iOS apps, [CocoaPods or Swift Package Manager](/v1/docs/mapp-intelligence-ios-sdk-v5-add-sdk-dependency) are simpler. Use the XCFramework only if one of the cases above applies. --- ## Get the XCFramework The XCFramework is published as part of each release. Download the `.xcframework` archive from the [GitHub Releases page](https://github.com/mapp-digital/MappIntelligence-iOS-v5/releases). --- ## Add the XCFramework to your Xcode project 1. Drag the `MappIntelligence.xcframework` bundle into your Xcode project navigator. 2. Select your app target. 3. Open *General > Frameworks, Libraries, and Embedded Content*. 4. Confirm the framework is listed and set **Embed** to *Embed & Sign*. 5. Build the target. Xcode automatically picks the matching slice for the current build platform (device or simulator). --- ## Use the SDK Once embedded, import and initialize the SDK as in any other integration: **Swift** ```swift import MappIntelligence MappIntelligence.shared()?.initWithConfiguration(    [123451234512345],    onTrackdomain: "https://your-trackdomain.com" ) ``` **Objective-C** ```objectivec #import [[MappIntelligence shared]    initWithConfiguration:@[@123451234512345]            onTrackdomain:@"https://your-trackdomain.com"]; ``` --- ## React Native consumers The SDK ships a dedicated logger interface (`MappIntelligenceLogger.h`, since 5.1.0) that React Native bridges can use to forward SDK log output to their JavaScript layer. See the React Native plugin documentation for the integration glue code. --- ## What this step should achieve - The SDK binary is embedded and signed in your app target. - The SDK initializes successfully on both device and simulator builds. - You receive Mapp Intelligence requests in the same way as with CocoaPods or SPM. --- ## Related - [Add the SDK Dependency](/v1/docs/mapp-intelligence-ios-sdk-v5-add-sdk-dependency) - [Requirements & Compatibility](/v1/docs/mapp-intelligence-ios-sdk-v5-requirements-compatibility) - [Quickstart](/v1/docs/mapp-intelligence-ios-sdk-v5-quickstart)