Skip to content

Manual installation instructions

Peter Jenkins edited this page Sep 25, 2018 · 19 revisions

Manual Installation

Follow the steps below if you'd prefer to include the SDK manually, without a dependency manager:

  1. Add mParticle as a submodule of your project:

    git submodule add https://github.com/mParticle/mparticle-apple-sdk
    

    If you prefer not to use submodules, you can simply copy the files into your repository.

  2. Drag mParticle-Apple-SDK.xcodeproj into your project in Xcode

  3. In Xcode, navigate to the Embedded Binaries section under the General configuration tab of your project. Then drag in mParticle_Apple_SDK.framework from the Products directory

    There are two versions of the framework, one for iOS and the other for tvOS. You can tell them apart using Xcode's file inspector (Command+Option+1)

  4. Add the following required dependencies to Linked Frameworks and Libraries:

    • AdSupport.framework
    • CoreGraphics.framework
    • CoreTelephony.framework
    • Foundation.framework
    • libc++
    • libsqlite3
    • libz
    • Security.framework
    • SystemConfiguration.framework
    • UIKit.framework
  5. The following libraries should be included in your project, but can be marked as optional:

    • iAd.framework
    • UserNotifications.framework
  6. The following library is optional:

    • CoreLocation.framework - Include it if location tracking features are needed

Adding kits

If you would like to additionally include any kits there are several additional steps:

1. Navigate to the kit repository and download the latest code

  1. See here for all kit repositories
  2. Each repository contains a directory e.g. "mParticle-Localytics", which contains the code for the kit (typically MPKitFoo.h and .m).
  3. Download the latest code from step 2 and drag it into your project

2. Add the underlying SDK on which the kit depends

This will typically involve downloading their framework and including it in your project along with adding any additional dependencies that don't overlap with mParticle's dependencies.