Integrate the SDK for MXO in your App

Before you can deploy the integration, you must ensure the SDK is set up with the correct initialization parameters.

You can download the latest SDK and review the extended integration instructions from Github:

Requirements

iOS SDK Deployment Target

The SDK deployment target is iOS 12.0 or higher. If your deployment target is lower, please contact Medallia Customer Support so we can understand how to best mitigate this.

Android Minimum API Level

The minimum supported API level is API 28 (Android 9). If your API level is between API 21 and API 28, the MXO SDK will be disabled for your project. Please contact Medallia Customer Support so we can understand how to best mitigate this.

Installation and Environment Setup

Follow these steps to add the MXO iOS SDK into your app using CocoaPods or Swift Package Manager.

To add MXO Android SDK into your app, follow these steps.

Step 1: Finding your Integration Parameters in MXO

You need to provide specific information about your MXO environment when integrating your mobile solution with the SDK. These integration parameters include:

  • Site Key
Note: For more information on how to find your Site Key, see here.
  • Touchpoint URI
Note: For more information on how to find your Touchpoint URI, see here.
  • Host name
Note: For more information on how to find your Host name, see here.

Step 2: Define the SDK Initialization Parameters using the Integration Parameters for your Space

Initialize the SDK using the integration parameters specific to your MXO environment.

Example

Initialization parameters example for your iOS app.

let siteKey = "ONE-XXXXXXXX-6100"
let touchpointURI = "ios://myiOSAppBaseURI"
let hostName = "xx.thunderhead.com"
NSString *siteKey = @"ONE-XXXXXXXX-6100";
NSString *touchpointURI = @"ios://myiOSAppBaseURI";
NSString *hostName = @"xx.thunderhead.com";

Initialization parameters example for your Android app.

const val SITE_KEY = "ONE-XXXXXXXX-6100" 
const val HOST = "https://xx.thunderhead.com" 
const val TOUCHPOINT = "android://myAndroidAppTouchpointUri"
private static final String siteKey = "ONE-XXXXXXXX-6100"; 
private static final String host = "https://xx.thunderhead.com";
private static final String touchpointURI = "android://myAndroidAppTouchpointUri";

Step 3a: Initialize the SDK in Admin mode

Admin mode provides you with an interface that lets you add Activity Capture Points to Interactions and elements, Attribute Capture Points to elements, and preview your configuration before publishing it to your live environment.

The Admin mode build should only be distributed internally to business users involved in MXO setup. This is your internal dev build.

Configure the SDK in Admin mode and use this to create your Admin mode Build for internal distribution.

For more information, see how to configure the SDK in Admin mode for iOS and Android.

Step 3b: Initialize the SDK in User mode

The User mode build should be made available through the App and Play Store, when you are satisfied that all insights are being tracked in Admin mode and internal QA requirements have been met.

Initialize the SDK in User mode and use this to create your User mode Build for publication to the Apple App Store.

For more information, see how to configure the SDK in User mode for iOS and Android.