Additional integration considerations

Medallia mobile SDKs Communication Bridge Integration

To enable communication between MXO and other Medallia mobile SDKs, such as Medallia Digital Experience Analytics (DXA) and Medallia Digital Feedback (DF), you will need to add the Medallia Bridge framework into your project along with frameworks for the SDK you are going to use it with.

You can do this by adding the Bridge dependency to your project:

Kotlin
Java
dependencies { implementation("com.medallia:mobile-bridge-android-sdk:+") }dependencies { implementation 'com.medallia:mobile-bridge-android-sdk:+' }
Note: Medallia DXA and DF SDKs require their own development work. Please see the documentation to integrate and configure Medallia DXA and DF SDKs. For more information, see how to disable/enable Medallia communication for MXO.

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:

Kotlin
Groovy
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.