{"id":30312754,"url":"https://github.com/mparticle/mparticle-apple-sdk","last_synced_at":"2026-04-09T21:09:44.347Z","repository":{"id":1779415,"uuid":"44760307","full_name":"mParticle/mparticle-apple-sdk","owner":"mParticle","description":"mParticle Apple SDK","archived":false,"fork":false,"pushed_at":"2025-08-14T18:52:00.000Z","size":9715,"stargazers_count":52,"open_issues_count":31,"forks_count":74,"subscribers_count":22,"default_branch":"main","last_synced_at":"2025-08-17T04:47:20.751Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mParticle.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-10-22T17:03:41.000Z","updated_at":"2025-08-08T14:01:15.000Z","dependencies_parsed_at":"2023-10-17T01:47:04.658Z","dependency_job_id":"e8641740-6ee2-4763-968b-289cc34c456e","html_url":"https://github.com/mParticle/mparticle-apple-sdk","commit_stats":{"total_commits":1123,"total_committers":43,"mean_commits":26.11627906976744,"dds":0.678539626001781,"last_synced_commit":"d392d62087737d61de7202d262bfbe204d6b74f7"},"previous_names":["mparticle/mparticle-ios-sdk"],"tags_count":267,"template":false,"template_full_name":null,"purl":"pkg:github/mParticle/mparticle-apple-sdk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mParticle%2Fmparticle-apple-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mParticle%2Fmparticle-apple-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mParticle%2Fmparticle-apple-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mParticle%2Fmparticle-apple-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mParticle","download_url":"https://codeload.github.com/mParticle/mparticle-apple-sdk/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mParticle%2Fmparticle-apple-sdk/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270877428,"owners_count":24661139,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-17T02:00:09.016Z","response_time":129,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-17T17:14:33.453Z","updated_at":"2026-04-09T21:09:44.339Z","avatar_url":"https://github.com/mParticle.png","language":"Objective-C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://static.mparticle.com/sdk/mp_logo_black.svg\" width=\"280\"\u003e\n\n# mParticle Apple SDK\n\nA single SDK to collect analytics data and send it to 100+ marketing, analytics, and data platforms. Simplify your data integration with a single API.\n\nThis is the mParticle Apple SDK for iOS and tvOS.\n\nAt mParticle our mission is straightforward: make it really easy for apps and app services to connect and allow you to take ownership of your 1st party data.\nLike most app owners, you end up implementing and maintaining numerous SDKs ranging from analytics, attribution, push notification, remarketing,\nmonetization, etc. However, embedding multiple 3rd party libraries creates a number of unintended consequences and hidden costs.\n\nThe mParticle platform addresses all these problems. We support an ever growing number of integrations with services and SDKs, including developer\ntools, analytics, attribution, messaging, advertising, and more. mParticle has been designed to be the central hub connecting all these services –\nread the [docs](https://docs.mparticle.com/developers/sdk/ios/) or contact us at \u003csupport@mparticle.com\u003e to learn more.\n\n## Overview\n\nThis document will help you:\n\n- Install the mParticle SDK using [CocoaPods](https://cocoapods.org/?q=mparticle) or [Swift Package Manager](https://github.com/apple/swift-package-manager)\n- Add any desired [kits](#currently-supported-kits)\n- Initialize the mParticle SDK\n\n## Get the SDK\n\nThe mParticle-Apple-SDK is available via [CocoaPods](https://cocoapods.org/?q=mparticle) or [Swift Package Manager](https://github.com/apple/swift-package-manager). Follow the instructions below based on your preference.\n\n#### CocoaPods\n\nTo integrate the SDK using CocoaPods, specify it in your [Podfile](https://guides.cocoapods.org/syntax/podfile.html):\n\n```ruby\ntarget '\u003cYour Target\u003e' do\n    pod 'mParticle-Apple-SDK', '~\u003e 8'\nend\n```\n\nConfiguring your `Podfile` with the statement above will include only the _Core_ mParticle SDK.\n\n\u003e If your app targets iOS and tvOS in the same Xcode project, you need to configure the `Podfile` differently in order to use the SDK with multiple platforms. You can find an example of multi-platform configuration [here](https://github.com/mParticle/mparticle-apple-sdk/wiki/Multi-platform-Configuration).\n\nIf you'd like to add any kits, you can do so as follows:\n\n```ruby\ntarget '\u003cYour Target\u003e' do\n    pod 'mParticle-Appboy', '~\u003e 8'\n    pod 'mParticle-BranchMetrics', '~\u003e 8'\n    pod 'mParticle-Localytics', '~\u003e 8'\nend\n```\n\nIn the cases above, the _Appboy_, _Branch Metrics_, and _Localytics_ kits would be integrated together with the core SDK.\n\n#### Crash Reporter\n\nFor iOS only, you can also choose to install the crash reporter by including it as a separate pod:\n\n```ruby\npod 'mParticle-CrashReporter', '~\u003e 1.3'\n```\n\nYou can read detailed instructions for including the Crash Reporter at its repository: [mParticle-CrashReporter](https://github.com/mParticle/mParticle-CrashReporter)\n\n\u003e Note you can't use the crash reporter at the same time as the Apteligent kit.\n\n#### Swift Package Manager\n\nTo integrate the SDK using Swift Package Manager, open your Xcode project and click on your project in the file list on the left, click on your Project name in the middle of the window, click on the \"Package Dependencies\" tab, and click the \"+\" button underneath the Packages list.\n\nEnter the repository URL `https://github.com/mParticle/mparticle-apple-sdk` in the search box on the top right, choose `mparticle-apple-sdk` from the list of pacakges, and change \"Dependency Rule\" to \"Up to Next Major Version\". Then click the \"Add Package\" button on the bottom right.\n\nThen choose the \"Package Product\" called `mParticle-Apple-SDK`.\n\n#### Currently Supported Kits\n\nSeveral integrations require additional client-side add-on libraries called \"kits.\" Some kits embed other SDKs, others just contain a bit of additional functionality. Kits are designed to feel just like server-side integrations; you enable, disable, filter, sample, and otherwise tweak kits completely from the mParticle platform UI. The Core SDK will detect kits at runtime, but you need to add them as dependencies to your app.\n\n| Kit                                                                                                                                    | CocoaPods | Swift Package Manager |\n| -------------------------------------------------------------------------------------------------------------------------------------- | :-------: | :-------------------: |\n| [Adjust](https://github.com/mparticle-integrations/mparticle-apple-integration-adjust)                                                 |     ✓     |           ✓           |\n| [Appboy](https://github.com/mparticle-integrations/mparticle-apple-integration-appboy)                                                 |     ✓     |           ✓           |\n| [Adobe](https://github.com/mparticle-integrations/mparticle-apple-integration-adobe)                                                   |     ✓     |           ✓           |\n| [AppsFlyer](https://github.com/mparticle-integrations/mparticle-apple-integration-appsflyer)                                           |     ✓     |           ✓           |\n| [Appsee](https://github.com/mparticle-integrations/mparticle-apple-integration-appsee)                                                 |     ✓     |\n| [Apptentive](https://github.com/mparticle-integrations/mparticle-apple-integration-apptentive)                                         |     ✓     |           ✓           |\n| [Apptimize](https://github.com/mparticle-integrations/mparticle-apple-integration-apptimize)                                           |     ✓     |           ✓           |\n| [Apteligent](https://github.com/mparticle-integrations/mparticle-apple-integration-apteligent)                                         |     ✓     |\n| [Blueshift](https://github.com/blueshift-labs/mparticle-apple-integration-blueshift)                                                   |     ✓     |\n| [Branch Metrics](https://github.com/mparticle-integrations/mparticle-apple-integration-branchmetrics)                                  |     ✓     |           ✓           |\n| [Button](https://github.com/mparticle-integrations/mparticle-apple-integration-button)                                                 |     ✓     |           ✓           |\n| [CleverTap](https://github.com/mparticle-integrations/mparticle-apple-integration-clevertap)                                           |     ✓     |           ✓           |\n| [comScore](https://github.com/mparticle-integrations/mparticle-apple-integration-comscore)                                             |     ✓     |           ✓           |\n| [Flurry](https://github.com/mparticle-integrations/mparticle-apple-integration-flurry)                                                 |     ✓     |\n| [Foresee](https://github.com/mparticle-integrations/mparticle-apple-integration-foresee)                                               |     ✓     |           ✓           |\n| [Google Analytics for Firebase](https://github.com/mparticle-integrations/mparticle-apple-integration-google-analytics-firebase)       |     ✓     |           ✓           |\n| [Google Analytics 4 for Firebase](https://github.com/mparticle-integrations/mparticle-apple-integration-google-analytics-firebase-ga4) |     ✓     |           ✓           |\n| [Instabot](https://github.com/mparticle-integrations/mparticle-apple-integration-instabot)                                             |     ✓     |\n| [Iterable](https://github.com/mparticle-integrations/mparticle-apple-integration-iterable)                                             |     ✓     |           ✓           |\n| [Kochava](https://github.com/mparticle-integrations/mparticle-apple-integration-kochava)                                               |           |           ✓           |\n| [Leanplum](https://github.com/mparticle-integrations/mparticle-apple-integration-leanplum)                                             |     ✓     |           ✓           |\n| [Localytics](https://github.com/mparticle-integrations/mparticle-apple-integration-localytics)                                         |     ✓     |           ✓           |\n| [Optimizely](https://github.com/mparticle-integrations/mparticle-apple-integration-optimizely)                                         |     ✓     |           ✓           |\n| [OneTrust](https://github.com/mparticle-integrations/mp-apple-integration-onetrust)                                                    |     ✓     |           ✓           |\n| [Pilgrim](https://github.com/mparticle-integrations/mparticle-apple-integration-pilgrim)                                               |     ✓     |\n| [Primer](https://github.com/mparticle-integrations/mparticle-apple-integration-primer)                                                 |     ✓     |\n| [Radar](https://github.com/mparticle-integrations/mparticle-apple-integration-radar)                                                   |     ✓     |           ✓           |\n| [Responsys](https://github.com/mparticle-integrations/mparticle-apple-integration-responsys)                                           |     ✓     |\n| [Reveal Mobile](https://github.com/mparticle-integrations/mparticle-apple-integration-revealmobile)                                    |     ✓     |\n| [Singular](https://github.com/mparticle-integrations/mparticle-apple-integration-singular)                                             |     ✓     |           ✓           |\n| [Skyhook](https://github.com/mparticle-integrations/mparticle-apple-integration-skyhook)                                               |     ✓     |\n| [Taplytics](https://github.com/mparticle-integrations/mparticle-apple-integration-taplytics)                                           |     ✓     |           ✓           |\n| [Tune](https://github.com/mparticle-integrations/mparticle-apple-integration-tune)                                                     |     ✓     |\n| [Urban Airship](https://github.com/mparticle-integrations/mparticle-apple-integration-urbanairship)                                    |     ✓     |           ✓           |\n| [UserLeap](https://github.com/UserLeap/userleap-mparticle-ios-kit)                                                                     |     ✓     |\n| [Wootric](https://github.com/mparticle-integrations/mparticle-apple-integration-wootric)                                               |     ✓     |\n\n## Initialize the SDK\n\nThe mParticle SDK is initialized by calling the `startWithOptions` method within the `application:didFinishLaunchingWithOptions:` delegate call. Preferably the location of the initialization method call should be one of the last statements in the `application:didFinishLaunchingWithOptions:`. The `startWithOptions` method requires an options argument containing your key and secret and an initial Identity request.\n\n\u003e Note that it is imperative for the SDK to be initialized in the `application:didFinishLaunchingWithOptions:` method. Other parts of the SDK rely on the `UIApplicationDidBecomeActiveNotification` notification to function properly. Failing to start the SDK as indicated will impair it. Also, please do **not** use _GCD_'s `dispatch_async` to start the SDK.\n\n#### Swift\n\n```swift\nimport mParticle_Apple_SDK\n\nfunc application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -\u003e Bool {\n\n       // Override point for customization after application launch.\n        let mParticleOptions = MParticleOptions(key: \"\u003c\u003c\u003cApp Key Here\u003e\u003e\u003e\", secret: \"\u003c\u003c\u003cApp Secret Here\u003e\u003e\u003e\")\n\n       //Please see the Identity page for more information on building this object\n        let request = MPIdentityApiRequest()\n        request.email = \"email@example.com\"\n        mParticleOptions.identifyRequest = request\n        mParticleOptions.onIdentifyComplete = { (apiResult, error) in\n            NSLog(\"Identify complete. userId = %@ error = %@\", apiResult?.user.userId.stringValue ?? \"Null User ID\", error?.localizedDescription ?? \"No Error Available\")\n        }\n\n       //Start the SDK\n        MParticle.sharedInstance().start(with: mParticleOptions)\n\n       return true\n}\n```\n\n#### Objective-C\n\nFor apps supporting iOS 8 and above, Apple recommends using the import syntax for **modules** or **semantic import**. However, if you prefer the traditional CocoaPods and static libraries delivery mechanism, that is fully supported as well.\n\nIf you are using mParticle as a framework, your import statement will be as follows:\n\n```objective-c\n@import mParticle_Apple_SDK;                // Apple recommended syntax, but requires \"Enable Modules (C and Objective-C)\" in pbxproj\n#import \u003cmParticle_Apple_SDK/mParticle.h\u003e   // Works when modules are not enabled\n\n```\n\nOtherwise, for CocoaPods without `use_frameworks!`, you can use either of these statements:\n\n```objective-c\n#import \u003cmParticle-Apple-SDK/mParticle.h\u003e\n#import \"mParticle.h\"\n```\n\nNext, you'll need to start the SDK:\n\n```objective-c\n- (BOOL)application:(UIApplication *)application\n        didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {\n\n    MParticleOptions *mParticleOptions = [MParticleOptions optionsWithKey:@\"REPLACE ME\"\n                                                                   secret:@\"REPLACE ME\"];\n\n    //Please see the Identity page for more information on building this object\n    MPIdentityApiRequest *request = [MPIdentityApiRequest requestWithEmptyUser];\n    request.email = @\"email@example.com\";\n    mParticleOptions.identifyRequest = request;\n    mParticleOptions.onIdentifyComplete = ^(MPIdentityApiResult * _Nullable apiResult, NSError * _Nullable error) {\n        NSLog(@\"Identify complete. userId = %@ error = %@\", apiResult.user.userId, error);\n    };\n\n    [[MParticle sharedInstance] startWithOptions:mParticleOptions];\n\n    return YES;\n}\n```\n\nPlease see [Identity](http://docs.mparticle.com/developers/sdk/ios/identity/) for more information on supplying an `MPIdentityApiRequest` object during SDK initialization.\n\n## Example Project with Sample Code\n\nA sample project is provided with the mParticle Apple SDK. It is a multi-platform video streaming app for both iOS and tvOS.\n\nClone the repository to your local machine\n\n```bash\ngit clone https://github.com/mParticle/mparticle-apple-sdk.git\n```\n\nIn order to run either the iOS or tvOS examples, first install the mParticle Apple SDK via [CocoaPods](https://guides.cocoapods.org/using/getting-started.html).\n\n1. Change to the `Examples/CocoaPodsExample` directory\n2. Run `pod install`\n3. Open **Example.xcworkspace** in Xcode, select either the **iOS_Example** or **tvOS_Example** scheme, build and run.\n\n## Read More\n\nJust by initializing the SDK you'll be set up to track user installs, engagement, and much more. Check out our doc site to learn how to add specific event tracking to your app.\n\n- [SDK Documentation](http://docs.mparticle.com/#mobile-sdk-guide)\n\n## Contributing\n\nWe welcome contributions! If you're interested in contributing to the mParticle Apple SDK, please read our [Contributing Guidelines](CONTRIBUTING.md).\n\n## Support\n\nQuestions? Have an issue? Read the [docs](https://docs.mparticle.com/developers/sdk/ios/) or contact our **Customer Success** team at \u003csupport@mparticle.com\u003e.\n\n## License\n\n[Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmparticle%2Fmparticle-apple-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmparticle%2Fmparticle-apple-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmparticle%2Fmparticle-apple-sdk/lists"}