File: intent-launcher.md | Updated: 11/15/2025
Hide navigation
Search
Ctrl K
Home Guides EAS Reference Learn
Reference version
SDK 53
Archive Expo Snack Discord and Forums Newsletter
A library that provides an API to launch Android intents.
Android
Bundled version:
~12.1.5
Copy page
expo-intent-launcher provides a way to launch Android intents. For example, you can use this API to open a specific settings screen.
Terminal
Copy
- npx expo install expo-intent-launcher
If you are installing this in an existing React Native app
, make sure to install expo
in your project.
import { startActivityAsync, ActivityAction } from 'expo-intent-launcher'; // Open location settings startActivityAsync(ActivityAction.LOCATION_SOURCE_SETTINGS);
import * as IntentLauncher from 'expo-intent-launcher';
IntentLauncher.getApplicationIconAsync(packageName)| Parameter | Type | Description |
| --- | --- | --- |
| packageName | string | The package name of the target application. For example, com.google.android.gm for Gmail. |
Returns the icon of the specified application as a base64-encoded PNG image string. The returned string is prefixed with data:image/png;base64, and can be used directly in an expo-image's Image.source
prop.
Returns:
[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) <string>
A promise that resolves to the base64-encoded PNG icon of the specified application, or an empty string if the icon could not be retrieved.
IntentLauncher.openApplication(packageName)| Parameter | Type | Description |
| --- | --- | --- |
| packageName | string | For example: com.google.android.gm for Gmail. |
Opens an application by its package name.
Returns:
void
IntentLauncher.startActivityAsync(activityAction, params)| Parameter | Type | Description |
| --- | --- | --- |
| activityAction | string | The action to be performed, for example, IntentLauncher.ActivityAction.WIRELESS_SETTINGS. There are a few pre-defined constants you can use for this parameter. You can find them at expo-intent-launcher/src/IntentLauncher.ts<br>. |
| params(optional) | [IntentLauncherParams](https://docs.expo.dev/versions/v53.0.0/sdk/intent-launcher#intentlauncherparams) | An object of intent parameters.<br><br>Default:{} |
Starts the specified activity. The method will return a promise which resolves when the user returns to the app.
Returns:
[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) <[IntentLauncherResult](https://docs.expo.dev/versions/v53.0.0/sdk/intent-launcher#intentlauncherresult) >
A promise which fulfils with IntentLauncherResult object.
IntentLauncherParams| Property | Type | Description |
| --- | --- | --- |
| category(optional) | string | Category provides more details about the action the intent performs. See Intent.addCategory<br>. |
| className(optional) | string | Class name of the ComponentName. |
| data(optional) | string | A URI specifying the data that the intent should operate upon. (Note: Android requires the URI scheme to be lowercase, unlike the formal RFC.) |
| extra(optional) | Record<string, any> | A map specifying additional key-value pairs which are passed with the intent as extras. The keys must include a package prefix, for example the app com.android.contacts would use names like com.android.contacts.ShowAll. |
| flags(optional) | number | Bitmask of flags to be used. See Intent.setFlags<br> for more details. |
| packageName(optional) | string | Package name used as an identifier of ComponentName. Set this only if you want to explicitly set the component to handle the intent. |
| type(optional) | string | A string specifying the MIME type of the data represented by the data parameter. Ignore this argument to allow Android to infer the correct MIME type. |
IntentLauncherResult| Property | Type | Description |
| --- | --- | --- |
| data(optional) | string | Optional data URI that can be returned by the activity. |
| extra(optional) | object | Optional extras object that can be returned by the activity. |
| resultCode | [ResultCode](https://docs.expo.dev/versions/v53.0.0/sdk/intent-launcher#resultcode) | Result code returned by the activity. |
ActivityActionConstants are from the source code of Settings provider .
ACCESSIBILITY_SETTINGSActivityAction.ACCESSIBILITY_SETTINGS = "android.settings.ACCESSIBILITY_SETTINGS"
APP_NOTIFICATION_REDACTIONActivityAction.APP_NOTIFICATION_REDACTION = "android.settings.ACTION_APP_NOTIFICATION_REDACTION"
CONDITION_PROVIDER_SETTINGSActivityAction.CONDITION_PROVIDER_SETTINGS = "android.settings.ACTION_CONDITION_PROVIDER_SETTINGS"
NOTIFICATION_LISTENER_SETTINGSActivityAction.NOTIFICATION_LISTENER_SETTINGS = "android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"
PRINT_SETTINGSActivityAction.PRINT_SETTINGS = "android.settings.ACTION_PRINT_SETTINGS"
ADD_ACCOUNT_SETTINGSActivityAction.ADD_ACCOUNT_SETTINGS = "android.settings.ADD_ACCOUNT_SETTINGS"
AIRPLANE_MODE_SETTINGSActivityAction.AIRPLANE_MODE_SETTINGS = "android.settings.AIRPLANE_MODE_SETTINGS"
APN_SETTINGSActivityAction.APN_SETTINGS = "android.settings.APN_SETTINGS"
APP_NOTIFICATION_SETTINGSActivityAction.APP_NOTIFICATION_SETTINGS = "android.settings.APP_NOTIFICATION_SETTINGS"
APP_OPS_SETTINGSActivityAction.APP_OPS_SETTINGS = "android.settings.APP_OPS_SETTINGS"
APPLICATION_DETAILS_SETTINGSActivityAction.APPLICATION_DETAILS_SETTINGS = "android.settings.APPLICATION_DETAILS_SETTINGS"
APPLICATION_DEVELOPMENT_SETTINGSActivityAction.APPLICATION_DEVELOPMENT_SETTINGS = "android.settings.APPLICATION_DEVELOPMENT_SETTINGS"
APPLICATION_SETTINGSActivityAction.APPLICATION_SETTINGS = "android.settings.APPLICATION_SETTINGS"
BATTERY_SAVER_SETTINGSActivityAction.BATTERY_SAVER_SETTINGS = "android.settings.BATTERY_SAVER_SETTINGS"
BLUETOOTH_SETTINGSActivityAction.BLUETOOTH_SETTINGS = "android.settings.BLUETOOTH_SETTINGS"
CAPTIONING_SETTINGSActivityAction.CAPTIONING_SETTINGS = "android.settings.CAPTIONING_SETTINGS"
CAST_SETTINGSActivityAction.CAST_SETTINGS = "android.settings.CAST_SETTINGS"
DATA_ROAMING_SETTINGSActivityAction.DATA_ROAMING_SETTINGS = "android.settings.DATA_ROAMING_SETTINGS"
DATE_SETTINGSActivityAction.DATE_SETTINGS = "android.settings.DATE_SETTINGS"
DEVICE_INFO_SETTINGSActivityAction.DEVICE_INFO_SETTINGS = "android.settings.DEVICE_INFO_SETTINGS"
DEVICE_NAMEActivityAction.DEVICE_NAME = "android.settings.DEVICE_NAME"
DISPLAY_SETTINGSActivityAction.DISPLAY_SETTINGS = "android.settings.DISPLAY_SETTINGS"
DREAM_SETTINGSActivityAction.DREAM_SETTINGS = "android.settings.DREAM_SETTINGS"
HARD_KEYBOARD_SETTINGSActivityAction.HARD_KEYBOARD_SETTINGS = "android.settings.HARD_KEYBOARD_SETTINGS"
HOME_SETTINGSActivityAction.HOME_SETTINGS = "android.settings.HOME_SETTINGS"
IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGSActivityAction.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS = "android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS"
IGNORE_BATTERY_OPTIMIZATION_SETTINGSActivityAction.IGNORE_BATTERY_OPTIMIZATION_SETTINGS = "android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS"
INPUT_METHOD_SETTINGSActivityAction.INPUT_METHOD_SETTINGS = "android.settings.INPUT_METHOD_SETTINGS"
INPUT_METHOD_SUBTYPE_SETTINGSActivityAction.INPUT_METHOD_SUBTYPE_SETTINGS = "android.settings.INPUT_METHOD_SUBTYPE_SETTINGS"
INTERNAL_STORAGE_SETTINGSActivityAction.INTERNAL_STORAGE_SETTINGS = "android.settings.INTERNAL_STORAGE_SETTINGS"
LOCALE_SETTINGSActivityAction.LOCALE_SETTINGS = "android.settings.LOCALE_SETTINGS"
LOCATION_SOURCE_SETTINGSActivityAction.LOCATION_SOURCE_SETTINGS = "android.settings.LOCATION_SOURCE_SETTINGS"
MANAGE_ALL_APPLICATIONS_SETTINGSActivityAction.MANAGE_ALL_APPLICATIONS_SETTINGS = "android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS"
MANAGE_APPLICATIONS_SETTINGSActivityAction.MANAGE_APPLICATIONS_SETTINGS = "android.settings.MANAGE_APPLICATIONS_SETTINGS"
MANAGE_DEFAULT_APPS_SETTINGSActivityAction.MANAGE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_DEFAULT_APPS_SETTINGS"
MEMORY_CARD_SETTINGSActivityAction.MEMORY_CARD_SETTINGS = "android.settings.MEMORY_CARD_SETTINGS"
MONITORING_CERT_INFOActivityAction.MONITORING_CERT_INFO = "android.settings.MONITORING_CERT_INFO"
NETWORK_OPERATOR_SETTINGSActivityAction.NETWORK_OPERATOR_SETTINGS = "android.settings.NETWORK_OPERATOR_SETTINGS"
NFC_PAYMENT_SETTINGSActivityAction.NFC_PAYMENT_SETTINGS = "android.settings.NFC_PAYMENT_SETTINGS"
NFC_SETTINGSActivityAction.NFC_SETTINGS = "android.settings.NFC_SETTINGS"
NFCSHARING_SETTINGSActivityAction.NFCSHARING_SETTINGS = "android.settings.NFCSHARING_SETTINGS"
NIGHT_DISPLAY_SETTINGSActivityAction.NIGHT_DISPLAY_SETTINGS = "android.settings.NIGHT_DISPLAY_SETTINGS"
NOTIFICATION_POLICY_ACCESS_SETTINGSActivityAction.NOTIFICATION_POLICY_ACCESS_SETTINGS = "android.settings.NOTIFICATION_POLICY_ACCESS_SETTINGS"
NOTIFICATION_SETTINGSActivityAction.NOTIFICATION_SETTINGS = "android.settings.NOTIFICATION_SETTINGS"
PAIRING_SETTINGSActivityAction.PAIRING_SETTINGS = "android.settings.PAIRING_SETTINGS"
PRIVACY_SETTINGSActivityAction.PRIVACY_SETTINGS = "android.settings.PRIVACY_SETTINGS"
QUICK_LAUNCH_SETTINGSActivityAction.QUICK_LAUNCH_SETTINGS = "android.settings.QUICK_LAUNCH_SETTINGS"
REQUEST_IGNORE_BATTERY_OPTIMIZATIONSActivityAction.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS = "android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"
SECURITY_SETTINGSActivityAction.SECURITY_SETTINGS = "android.settings.SECURITY_SETTINGS"
SETTINGSActivityAction.SETTINGS = "android.settings.SETTINGS"
SHOW_ADMIN_SUPPORT_DETAILSActivityAction.SHOW_ADMIN_SUPPORT_DETAILS = "android.settings.SHOW_ADMIN_SUPPORT_DETAILS"
SHOW_INPUT_METHOD_PICKERActivityAction.SHOW_INPUT_METHOD_PICKER = "android.settings.SHOW_INPUT_METHOD_PICKER"
SHOW_REGULATORY_INFOActivityAction.SHOW_REGULATORY_INFO = "android.settings.SHOW_REGULATORY_INFO"
SHOW_REMOTE_BUGREPORT_DIALOGActivityAction.SHOW_REMOTE_BUGREPORT_DIALOG = "android.settings.SHOW_REMOTE_BUGREPORT_DIALOG"
SOUND_SETTINGSActivityAction.SOUND_SETTINGS = "android.settings.SOUND_SETTINGS"
STORAGE_MANAGER_SETTINGSActivityAction.STORAGE_MANAGER_SETTINGS = "android.settings.STORAGE_MANAGER_SETTINGS"
SYNC_SETTINGSActivityAction.SYNC_SETTINGS = "android.settings.SYNC_SETTINGS"
SYSTEM_UPDATE_SETTINGSActivityAction.SYSTEM_UPDATE_SETTINGS = "android.settings.SYSTEM_UPDATE_SETTINGS"
TETHER_PROVISIONING_UIActivityAction.TETHER_PROVISIONING_UI = "android.settings.TETHER_PROVISIONING_UI"
TRUSTED_CREDENTIALS_USERActivityAction.TRUSTED_CREDENTIALS_USER = "android.settings.TRUSTED_CREDENTIALS_USER"
USAGE_ACCESS_SETTINGSActivityAction.USAGE_ACCESS_SETTINGS = "android.settings.USAGE_ACCESS_SETTINGS"
USER_DICTIONARY_INSERTActivityAction.USER_DICTIONARY_INSERT = "android.settings.USER_DICTIONARY_INSERT"
USER_DICTIONARY_SETTINGSActivityAction.USER_DICTIONARY_SETTINGS = "android.settings.USER_DICTIONARY_SETTINGS"
USER_SETTINGSActivityAction.USER_SETTINGS = "android.settings.USER_SETTINGS"
VOICE_CONTROL_AIRPLANE_MODEActivityAction.VOICE_CONTROL_AIRPLANE_MODE = "android.settings.VOICE_CONTROL_AIRPLANE_MODE"
VOICE_CONTROL_BATTERY_SAVER_MODEActivityAction.VOICE_CONTROL_BATTERY_SAVER_MODE = "android.settings.VOICE_CONTROL_BATTERY_SAVER_MODE"
VOICE_CONTROL_DO_NOT_DISTURB_MODEActivityAction.VOICE_CONTROL_DO_NOT_DISTURB_MODE = "android.settings.VOICE_CONTROL_DO_NOT_DISTURB_MODE"
VOICE_INPUT_SETTINGSActivityAction.VOICE_INPUT_SETTINGS = "android.settings.VOICE_INPUT_SETTINGS"
VPN_SETTINGSActivityAction.VPN_SETTINGS = "android.settings.VPN_SETTINGS"
VR_LISTENER_SETTINGSActivityAction.VR_LISTENER_SETTINGS = "android.settings.VR_LISTENER_SETTINGS"
WEBVIEW_SETTINGSActivityAction.WEBVIEW_SETTINGS = "android.settings.WEBVIEW_SETTINGS"
WIFI_IP_SETTINGSActivityAction.WIFI_IP_SETTINGS = "android.settings.WIFI_IP_SETTINGS"
WIFI_SETTINGSActivityAction.WIFI_SETTINGS = "android.settings.WIFI_SETTINGS"
WIRELESS_SETTINGSActivityAction.WIRELESS_SETTINGS = "android.settings.WIRELESS_SETTINGS"
ZEN_MODE_AUTOMATION_SETTINGSActivityAction.ZEN_MODE_AUTOMATION_SETTINGS = "android.settings.ZEN_MODE_AUTOMATION_SETTINGS"
ZEN_MODE_EVENT_RULE_SETTINGSActivityAction.ZEN_MODE_EVENT_RULE_SETTINGS = "android.settings.ZEN_MODE_EVENT_RULE_SETTINGS"
ZEN_MODE_EXTERNAL_RULE_SETTINGSActivityAction.ZEN_MODE_EXTERNAL_RULE_SETTINGS = "android.settings.ZEN_MODE_EXTERNAL_RULE_SETTINGS"
ZEN_MODE_PRIORITY_SETTINGSActivityAction.ZEN_MODE_PRIORITY_SETTINGS = "android.settings.ZEN_MODE_PRIORITY_SETTINGS"
ZEN_MODE_SCHEDULE_RULE_SETTINGSActivityAction.ZEN_MODE_SCHEDULE_RULE_SETTINGS = "android.settings.ZEN_MODE_SCHEDULE_RULE_SETTINGS"
ZEN_MODE_SETTINGSActivityAction.ZEN_MODE_SETTINGS = "android.settings.ZEN_MODE_SETTINGS"
ResultCodeSuccessResultCode.Success = -1
Indicates that the activity operation succeeded.
CanceledResultCode.Canceled = 0
Means that the activity was canceled, for example, by tapping on the back button.
FirstUserResultCode.FirstUser = 1
First custom, user-defined value that can be returned by the activity.