Additional integration considerations

Sending Interaction requests based on the Interaction map

To reduce the number of unnecessary Interaction requests sent automatically by the SDK, only Interactions with explicit Interaction paths created under a Touchpoint and configured with at least one point are sent to Medallia Experience Orchestration.

The SDK will only send Interactions if they have been created under a Touchpoint and/or if they match wildcard rules defined under a Touchpoint.

For an Interaction to be sent by the SDK this Interaction needs to contain at least one Activity Capture Point, Attribute Capture Point, and/or Optimization Point.

Important: If you are running the SDK in User mode, you need to ensure that all Interactions and related points have been fully published, before the SDK will trigger a request.

Medallia Experience Orchestration Application Manifest file permissions

The following permissions are included in the Medallia Experience Orchestration SDK's AndroidManifest.xml and will be merged with your applications AndroidManifest.xml:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

The SYSTEM_ALERT_WINDOW permission is needed only for Admin mode builds. Add this as a flavor-specific permission in your setup to avoid having to show it as a permission change to your Play Store users.

You can remove this permission in User mode builds by adding the following to your AndroidManifest.xml:

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" tools:node="remove" />

Adding support for an Android API version below 26

If you need to support an Android API version below 26, add the following under the android section of your build.gradle.kts or build.gradle:

compileOptions {
        isCoreLibraryDesugaringEnabled = true
}
dependencies {
        coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:1.1.5")
}
compileOptions {
	coreLibraryDesugaringEnabled true
}
dependencies {
        coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
}
Note: This is required due to an Android bug.