MicroStrategy ONE
Deep Linking to Third-Party Applications on Android
The URL API in MicroStrategy Mobile SDK for Android allows deep linking. Deep linking allows you to link to specific content in an app installed on the same device. This feature allows users to open third-party applications already installed on their device with context passed by the URL API.
Android supports deep linking with URL scheme, as well as intent.
Deep Linking with URL Schema
The following parameters and values are used to launch third-party applications with URL schema.
Parameters | Description | Required? |
---|---|---|
evt |
Use a value of 3992 for the evt parameter. |
Yes |
URL scheme | Appears in the beginning of the URL link for the third-party application's schema. |
Yes |
name/value pairs |
You can use data in name/value pairs. Example: |
No |
A sample URL for launching third-party applications by URL scheme with static context is shown below.
appScheme://?evt=3992&itemNumber=849
A sample URL for launching third-party applications by URL scheme with dynamic context is shown below.
appScheme://?evt=3992&itemNumber={Subcategory@ID}
Remember to encode URLs that contain spaces or special characters.
Deep Linking with Intent
The following parameters and values are used to launch third-party applications with intent.
Parameter | Description | Required? |
---|---|---|
evt |
Use a value of 3992 for the evt parameter. |
Yes |
action |
An action name, such as ACTION_VIEW. Application-specific actions are prefixed with the vendor's package name. Example: android.intent.action.required.inventory |
No |
component |
The className of the component that reacts to the link. Examples: com.example/.MainActivity |
No |
categories |
Set categories to the intent, separated by commas. Categories provide additional detail about the action the intent performs. Android systems use this information to filter and resolve the intent. |
No |
data | A uniform resource identifier (URI), Android-specific field for intent objects. This is usually the content data that the intent handles. You must use URL-encoded formatting. | No |
type |
The mime type. This is Android-specific for intent objects, as an additional specification to the URL type. |
No |
flags | Flags that determine the startup action of the component, such as whether to start in a new task, start in an existing task, clear existing tasks, and so on. | No |
name/value pairs |
You can use other data for the intent, in name/value pairs. You cannot use existing parameter names such as action, component, and so on. Example: |
No |
A sample URL for launching third-party applications by Android intent with static context is shown below.
appScheme://?evt=3992&action=android.intent.action.request.Inventory&itemNumber=849
A sample URL for launching third-party applications by Android intent with dynamic context is shown below.
appScheme://?evt=3992&action=android.intent.action.request.Inventory&itemNumber={Subcategory@ID}