Intent
public
class
Intent
extends Object
implements
Cloneable,
Parcelable
java.lang.Object | |
↳ | android.content.Intent |
An intent is an abstract description of an operation to be performed. It
can be used with startActivity
to
launch an Activity
,
broadcastIntent
to
send it to any interested BroadcastReceiver
components,
and Context.startService(Intent)
or
Context.bindService(Intent, BindServiceFlags, Executor, ServiceConnection)
to communicate with a
background Service
.
An Intent provides a facility for performing late runtime binding between the code in different applications. Its most significant use is in the launching of activities, where it can be thought of as the glue between activities. It is basically a passive data structure holding an abstract description of an action to be performed.
Developer Guides
For information about how to create and resolve intents, read the Intents and Intent Filters developer guide.
Intent Structure
The primary pieces of information in an intent are:
-
action -- The general action to be performed, such as
ACTION_VIEW
,ACTION_EDIT
,ACTION_MAIN
, etc. -
data -- The data to operate on, such as a person record in the contacts database, expressed as a
Uri
.
Some examples of action/data pairs are:
-
ACTION_VIEW
content://contacts/people/1 -- Display information about the person whose identifier is "1". -
ACTION_DIAL
content://contacts/people/1 -- Display the phone dialer with the person filled in. -
ACTION_VIEW
tel:123 -- Display the phone dialer with the given number filled in. Note how the VIEW action does what is considered the most reasonable thing for a particular URI. -
ACTION_DIAL
tel:123 -- Display the phone dialer with the given number filled in. -
ACTION_EDIT
content://contacts/people/1 -- Edit information about the person whose identifier is "1". -
ACTION_VIEW
content://contacts/people/ -- Display a list of people, which the user can browse through. This example is a typical top-level entry into the Contacts application, showing you the list of people. Selecting a particular person to view would result in a new intent {ACTION_VIEW
content://contacts/people/N } being used to start an activity to display that person.
In addition to these primary attributes, there are a number of secondary attributes that you can also include with an intent:
-
category -- Gives additional information about the action to execute. For example,
CATEGORY_LAUNCHER
means it should appear in the Launcher as a top-level application, whileCATEGORY_ALTERNATIVE
means it should be included in a list of alternative actions the user can perform on a piece of data. -
type -- Specifies an explicit type (a MIME type) of the intent data. Normally the type is inferred from the data itself. By setting this attribute, you disable that evaluation and force an explicit type.
-
component -- Specifies an explicit name of a component class to use for the intent. Normally this is determined by looking at the other information in the intent (the action, data/type, and categories) and matching that with a component that can handle it. If this attribute is set then none of the evaluation is performed, and this component is used exactly as is. By specifying this attribute, all of the other Intent attributes become optional.
-
extras -- This is a
Bundle
of any additional information. This can be used to provide extended information to the component. For example, if we have a action to send an e-mail message, we could also include extra pieces of data here to supply a subject, body, etc.
Here are some examples of other operations you can specify as intents using these additional parameters:
-
ACTION_MAIN
with categoryCATEGORY_HOME
-- Launch the home screen. -
ACTION_GET_CONTENT
with MIME typevnd.android.cursor.item/phone
-- Display the list of people's phone numbers, allowing the user to browse through them and pick one and return it to the parent activity. -
ACTION_GET_CONTENT
with MIME type */* and categoryCATEGORY_OPENABLE
-- Display all pickers for data that can be opened withContentResolver.openInputStream()
, allowing the user to pick one of them and then some data inside of it and returning the resulting URI to the caller. This can be used, for example, in an e-mail application to allow the user to pick some data to include as an attachment.
There are a variety of standard Intent action and category constants
defined in the Intent class, but applications can also define their own.
These strings use Java-style scoping, to ensure they are unique -- for
example, the standard ACTION_VIEW
is called
"android.intent.action.VIEW".
Put together, the set of actions, data types, categories, and extra data defines a language for the system allowing for the expression of phrases such as "call john smith's cell". As applications are added to the system, they can extend this language by adding new actions, types, and categories, or they can modify the behavior of existing phrases by supplying their own activities that handle them.
Intent Resolution
There are two primary forms of intents you will use.
-
Explicit Intents have specified a component (via
setComponent(ComponentName)
orsetClass(Context, Class)
), which provides the exact class to be run. Often these will not include any other information, simply being a way for an application to launch various internal activities it has as the user interacts with the application. -
Implicit Intents have not specified a component; instead, they must include enough information for the system to determine which of the available components is best to run for that intent.
When using implicit intents, given such an arbitrary intent we need to
know what to do with it. This is handled by the process of Intent
resolution, which maps an Intent to an Activity
,
BroadcastReceiver
, or Service
(or sometimes two or
more activities/receivers) that can handle it.
The intent resolution mechanism basically revolves around matching an
Intent against all of the <intent-filter> descriptions in the
installed application packages. (Plus, in the case of broadcasts, any BroadcastReceiver
objects explicitly registered with Context.registerReceiver
.) More
details on this can be found in the documentation on the IntentFilter
class.
There are three pieces of information in the Intent that are used for
resolution: the action, type, and category. Using this information, a query
is done on the PackageManager
for a component that can handle the
intent. The appropriate component is determined based on the intent
information supplied in the AndroidManifest.xml
file as
follows:
-
The action, if given, must be listed by the component as one it handles.
-
The type is retrieved from the Intent's data, if not already supplied in the Intent. Like the action, if a type is included in the intent (either explicitly or implicitly in its data), then this must be listed by the component as one it handles.
- For data that is not a
content:
URI and where no explicit type is included in the Intent, instead the scheme of the intent data (such ashttp:
ormailto:
) is considered. Again like the action, if we are matching a scheme it must be listed by the component as one it can handle. -
The categories, if supplied, must all be listed by the activity as categories it handles. That is, if you include the categories
CATEGORY_LAUNCHER
andCATEGORY_ALTERNATIVE
, then you will only resolve to components with an intent that lists both of those categories. Activities will very often need to support theCATEGORY_DEFAULT
so that they can be found byContext.startActivity()
.
For example, consider the Note Pad sample application that allows a user to browse through a list of notes data and view details about individual items. Text in italics indicates places where you would replace a name with one specific to your own package.
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.notepad"> <application android:icon="@drawable/app_notes" android:label="@string/app_name"> <provider class=".NotePadProvider" android:authorities="com.google.provider.NotePad" /> <activity class=".NotesList" android:label="@string/title_notes_list"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW" /> <action android:name="android.intent.action.EDIT" /> <action android:name="android.intent.action.PICK" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="vnd.android.cursor.dir/vnd.google.note" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.GET_CONTENT" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="vnd.android.cursor.item/vnd.google.note" /> </intent-filter> </activity> <activity class=".NoteEditor" android:label="@string/title_note"> <intent-filter android:label="@string/resolve_edit"> <action android:name="android.intent.action.VIEW" /> <action android:name="android.intent.action.EDIT" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="vnd.android.cursor.item/vnd.google.note" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.INSERT" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="vnd.android.cursor.dir/vnd.google.note" /> </intent-filter> </activity> <activity class=".TitleEditor" android:label="@string/title_edit_title" android:theme="@android:style/Theme.Dialog"> <intent-filter android:label="@string/resolve_title"> <action android:name="com.android.notepad.action.EDIT_TITLE" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.ALTERNATIVE" /> <category android:name="android.intent.category.SELECTED_ALTERNATIVE" /> <data android:mimeType="vnd.android.cursor.item/vnd.google.note" /> </intent-filter> </activity> </application> </manifest>
The first activity,
com.android.notepad.NotesList
, serves as our main
entry into the app. It can do three things as described by its three intent
templates:
<intent-filter> <action android:name="
android.intent.action.MAIN
" /> <category android:name="android.intent.category.LAUNCHER
" /> </intent-filter>This provides a top-level entry into the NotePad application: the standard MAIN action is a main entry point (not requiring any other information in the Intent), and the LAUNCHER category says that this entry point should be listed in the application launcher.
<intent-filter> <action android:name="
android.intent.action.VIEW
" /> <action android:name="android.intent.action.EDIT
" /> <action android:name="android.intent.action.PICK
" /> <category android:name="android.intent.category.DEFAULT
" /> <data android:mimeType="vnd.android.cursor.dir/vnd.google.note" /> </intent-filter>This declares the things that the activity can do on a directory of notes. The type being supported is given with the <type> tag, where
vnd.android.cursor.dir/vnd.google.note
is a URI from which a Cursor of zero or more items (vnd.android.cursor.dir
) can be retrieved which holds our note pad data (vnd.google.note
). The activity allows the user to view or edit the directory of data (via the VIEW and EDIT actions), or to pick a particular note and return it to the caller (via the PICK action). Note also the DEFAULT category supplied here: this is required for theContext.startActivity
method to resolve your activity when its component name is not explicitly specified.<intent-filter> <action android:name="
android.intent.action.GET_CONTENT
" /> <category android:name="android.intent.category.DEFAULT
" /> <data android:mimeType="vnd.android.cursor.item/vnd.google.note" /> </intent-filter>This filter describes the ability to return to the caller a note selected by the user without needing to know where it came from. The data type
vnd.android.cursor.item/vnd.google.note
is a URI from which a Cursor of exactly one (vnd.android.cursor.item
) item can be retrieved which contains our note pad data (vnd.google.note
). The GET_CONTENT action is similar to the PICK action, where the activity will return to its caller a piece of data selected by the user. Here, however, the caller specifies the type of data they desire instead of the type of data the user will be picking from.
Given these capabilities, the following intents will resolve to the NotesList activity:
-
{ action=android.app.action.MAIN } matches all of the activities that can be used as top-level entry points into an application.
-
{ action=android.app.action.MAIN, category=android.app.category.LAUNCHER } is the actual intent used by the Launcher to populate its top-level list.
-
{ action=android.intent.action.VIEW data=content://com.google.provider.NotePad/notes } displays a list of all the notes under "content://com.google.provider.NotePad/notes", which the user can browse through and see the details on.
-
{ action=android.app.action.PICK data=content://com.google.provider.NotePad/notes } provides a list of the notes under "content://com.google.provider.NotePad/notes", from which the user can pick a note whose data URL is returned back to the caller.
-
{ action=android.app.action.GET_CONTENT type=vnd.android.cursor.item/vnd.google.note } is similar to the pick action, but allows the caller to specify the kind of data they want back so that the system can find the appropriate activity to pick something of that data type.
The second activity,
com.android.notepad.NoteEditor
, shows the user a single
note entry and allows them to edit it. It can do two things as described
by its two intent templates:
<intent-filter android:label="@string/resolve_edit"> <action android:name="
android.intent.action.VIEW
" /> <action android:name="android.intent.action.EDIT
" /> <category android:name="android.intent.category.DEFAULT
" /> <data android:mimeType="vnd.android.cursor.item/vnd.google.note" /> </intent-filter>The first, primary, purpose of this activity is to let the user interact with a single note, as decribed by the MIME type
vnd.android.cursor.item/vnd.google.note
. The activity can either VIEW a note or allow the user to EDIT it. Again we support the DEFAULT category to allow the activity to be launched without explicitly specifying its component.<intent-filter> <action android:name="
android.intent.action.INSERT
" /> <category android:name="android.intent.category.DEFAULT
" /> <data android:mimeType="vnd.android.cursor.dir/vnd.google.note" /> </intent-filter>The secondary use of this activity is to insert a new note entry into an existing directory of notes. This is used when the user creates a new note: the INSERT action is executed on the directory of notes, causing this activity to run and have the user create the new note data which it then adds to the content provider.
Given these capabilities, the following intents will resolve to the NoteEditor activity:
-
{ action=android.intent.action.VIEW data=content://com.google.provider.NotePad/notes/{ID} } shows the user the content of note {ID}.
-
{ action=android.app.action.EDIT data=content://com.google.provider.NotePad/notes/{ID} } allows the user to edit the content of note {ID}.
-
{ action=android.app.action.INSERT data=content://com.google.provider.NotePad/notes } creates a new, empty note in the notes list at "content://com.google.provider.NotePad/notes" and allows the user to edit it. If they keep their changes, the URI of the newly created note is returned to the caller.
The last activity,
com.android.notepad.TitleEditor
, allows the user to
edit the title of a note. This could be implemented as a class that the
application directly invokes (by explicitly setting its component in
the Intent), but here we show a way you can publish alternative
operations on existing data:
<intent-filter android:label="@string/resolve_title"> <action android:name="com.android.notepad.action.EDIT_TITLE" /> <category android:name="android.intent.category.DEFAULT
" /> <category android:name="android.intent.category.ALTERNATIVE
" /> <category android:name="android.intent.category.SELECTED_ALTERNATIVE
" /> <data android:mimeType="vnd.android.cursor.item/vnd.google.note" /> </intent-filter>
In the single intent template here, we
have created our own private action called
com.android.notepad.action.EDIT_TITLE
which means to
edit the title of a note. It must be invoked on a specific note
(data type vnd.android.cursor.item/vnd.google.note
) like the previous
view and edit actions, but here displays and edits the title contained
in the note data.
In addition to supporting the default category as usual, our title editor
also supports two other standard categories: ALTERNATIVE and
SELECTED_ALTERNATIVE. Implementing
these categories allows others to find the special action it provides
without directly knowing about it, through the
PackageManager.queryIntentActivityOptions(ComponentName, Intent, Intent, int)
method, or
more often to build dynamic menu items with
Menu.addIntentOptions(int, int, int, ComponentName, Intent, Intent, int, MenuItem)
. Note that in the intent
template here was also supply an explicit name for the template
(via android:label="@string/resolve_title"
) to better control
what the user sees when presented with this activity as an alternative
action to the data they are viewing.
Given these capabilities, the following intent will resolve to the TitleEditor activity:
-
{ action=com.android.notepad.action.EDIT_TITLE data=content://com.google.provider.NotePad/notes/{ID} } displays and allows the user to edit the title associated with note {ID}.
Standard Activity Actions
These are the current standard actions that Intent defines for launching
activities (usually through Context.startActivity
. The most
important, and by far most frequently used, are ACTION_MAIN
and
ACTION_EDIT
.
-
ACTION_MAIN
-
ACTION_VIEW
-
ACTION_ATTACH_DATA
-
ACTION_EDIT
-
ACTION_PICK
-
ACTION_CHOOSER
-
ACTION_GET_CONTENT
-
ACTION_DIAL
-
ACTION_CALL
-
ACTION_SEND
-
ACTION_SENDTO
-
ACTION_ANSWER
-
ACTION_INSERT
-
ACTION_DELETE
-
ACTION_RUN
-
ACTION_SYNC
-
ACTION_PICK_ACTIVITY
-
ACTION_SEARCH
-
ACTION_WEB_SEARCH
-
ACTION_FACTORY_TEST
Standard Broadcast Actions
These are the current standard actions that Intent defines for receiving
broadcasts (usually through Context.registerReceiver
or a
<receiver> tag in a manifest).
-
ACTION_TIME_TICK
-
ACTION_TIME_CHANGED
-
ACTION_TIMEZONE_CHANGED
-
ACTION_BOOT_COMPLETED
-
ACTION_PACKAGE_ADDED
-
ACTION_PACKAGE_CHANGED
-
ACTION_PACKAGE_REMOVED
-
ACTION_PACKAGE_RESTARTED
-
ACTION_PACKAGE_DATA_CLEARED
-
ACTION_PACKAGES_SUSPENDED
-
ACTION_PACKAGES_UNSUSPENDED
-
ACTION_UID_REMOVED
-
ACTION_BATTERY_CHANGED
-
ACTION_POWER_CONNECTED
-
ACTION_POWER_DISCONNECTED
-
ACTION_SHUTDOWN
Note: If your app targets Android 11
(API level 30) or higher, registering broadcast such as
ACTION_PACKAGES_SUSPENDED
that includes package details in the
extras receives a filtered list of apps or nothing. Learn more about how to
manage package visibility.
Standard Categories
These are the current standard categories that can be used to further
clarify an Intent via addCategory(String)
.
-
CATEGORY_DEFAULT
-
CATEGORY_BROWSABLE
-
CATEGORY_TAB
-
CATEGORY_ALTERNATIVE
-
CATEGORY_SELECTED_ALTERNATIVE
-
CATEGORY_LAUNCHER
-
CATEGORY_INFO
-
CATEGORY_HOME
-
CATEGORY_PREFERENCE
-
CATEGORY_TEST
-
CATEGORY_CAR_DOCK
-
CATEGORY_DESK_DOCK
-
CATEGORY_LE_DESK_DOCK
-
CATEGORY_HE_DESK_DOCK
-
CATEGORY_CAR_MODE
-
CATEGORY_APP_MARKET
-
CATEGORY_VR_HOME
Standard Extra Data
These are the current standard fields that can be used as extra data via
putExtra(String, Bundle)
.
-
EXTRA_ALARM_COUNT
-
EXTRA_BCC
-
EXTRA_CC
-
EXTRA_CHANGED_COMPONENT_NAME
-
EXTRA_DATA_REMOVED
-
EXTRA_DOCK_STATE
-
EXTRA_DOCK_STATE_HE_DESK
-
EXTRA_DOCK_STATE_LE_DESK
-
EXTRA_DOCK_STATE_CAR
-
EXTRA_DOCK_STATE_DESK
-
EXTRA_DOCK_STATE_UNDOCKED
-
EXTRA_DONT_KILL_APP
-
EXTRA_EMAIL
-
EXTRA_INITIAL_INTENTS
-
EXTRA_INTENT
-
EXTRA_KEY_EVENT
-
EXTRA_ORIGINATING_URI
-
EXTRA_PHONE_NUMBER
-
EXTRA_REFERRER
-
EXTRA_REMOTE_INTENT_TOKEN
-
EXTRA_REPLACING
-
EXTRA_SHORTCUT_ICON
-
EXTRA_SHORTCUT_ICON_RESOURCE
-
EXTRA_SHORTCUT_INTENT
-
EXTRA_STREAM
-
EXTRA_SHORTCUT_NAME
-
EXTRA_SUBJECT
-
EXTRA_TEMPLATE
-
EXTRA_TEXT
-
EXTRA_TITLE
-
EXTRA_UID
-
EXTRA_USER_INITIATED
Flags
These are the possible flags that can be used in the Intent via
setFlags(int)
and addFlags(int)
. See setFlags(int)
for a list
of all possible flags.
Summary
Nested classes | |
---|---|
class |
Intent.FilterComparison
Wrapper class holding an Intent and implementing comparisons on it for the purpose of filtering. |
class |
Intent.ShortcutIconResource
Represents a shortcut/live folder icon resource. |
Constants | |
---|---|
String |
ACTION_AIRPLANE_MODE_CHANGED
Broadcast Action: The user has switched the phone into or out of Airplane Mode. |
String |
ACTION_ALL_APPS
Activity Action: List all available applications. |
String |
ACTION_ANSWER
Activity Action: Handle an incoming phone call. |
String |
ACTION_APPLICATION_LOCALE_CHANGED
Broadcast Action: Locale of a particular app has changed. |
String |
ACTION_APPLICATION_PREFERENCES
An activity that provides a user interface for adjusting application preferences. |
String |
ACTION_APPLICATION_RESTRICTIONS_CHANGED
Broadcast Action: Sent after application restrictions are changed. |
String |
ACTION_APP_ERROR
Activity Action: The user pressed the "Report" button in the crash/ANR dialog. |
String |
ACTION_ASSIST
Activity Action: Perform assist action. |
String |
ACTION_ATTACH_DATA
Used to indicate that some piece of data should be attached to some other place. |
String |
ACTION_AUTO_REVOKE_PERMISSIONS
Activity action: Launch UI to manage auto-revoke state. |
String |
ACTION_BATTERY_CHANGED
Broadcast Action: This is a sticky broadcast containing the charging state, level, and other information about the battery. |
String |
ACTION_BATTERY_LOW
Broadcast Action: Indicates low battery condition on the device. |
String |
ACTION_BATTERY_OKAY
Broadcast Action: Indicates the battery is now okay after being low. |
String |
ACTION_BOOT_COMPLETED
Broadcast Action: This is broadcast once, after the user has finished booting. |
String |
ACTION_BUG_REPORT
Activity Action: Show activity for reporting a bug. |
String |
ACTION_CALL
Activity Action: Perform a call to someone specified by the data. |
String |
ACTION_CALL_BUTTON
Activity Action: The user pressed the "call" button to go to the dialer or other appropriate UI for placing a call. |
String |
ACTION_CAMERA_BUTTON
Broadcast Action: The "Camera Button" was pressed. |
String |
ACTION_CARRIER_SETUP
Activity Action: Main entry point for carrier setup apps. |
String |
ACTION_CHOOSER
Activity Action: Display an activity chooser, allowing the user to pick what they want to before proceeding. |
String |
ACTION_CLOSE_SYSTEM_DIALOGS
This constant was deprecated
in API level 31.
This intent is deprecated for third-party applications starting from Android
|
String |
ACTION_CONFIGURATION_CHANGED
Broadcast Action: The current device |
String |
ACTION_CREATE_DOCUMENT
Activity Action: Allow the user to create a new document. |
String |
ACTION_CREATE_NOTE
Activity Action: Starts a note-taking activity that can be used to create a note. |
String |
ACTION_CREATE_REMINDER
Activity Action: Creates a reminder. |
String |
ACTION_CREATE_SHORTCUT
Activity Action: Creates a shortcut. |
String |
ACTION_DATE_CHANGED
Broadcast Action: The date has changed. |
String |
ACTION_DEFAULT
A synonym for |
String |
ACTION_DEFINE
Activity Action: Define the meaning of the selected word(s). |
String |
ACTION_DELETE
Activity Action: Delete the given data from its container. |
String |
ACTION_DEVICE_STORAGE_LOW
This constant was deprecated
in API level 26.
if your app targets |
String |
ACTION_DEVICE_STORAGE_OK
This constant was deprecated
in API level 26.
if your app targets |
String |
ACTION_DIAL
Activity Action: Dial a number as specified by the data. |
String |
ACTION_DOCK_EVENT
Broadcast Action: A sticky broadcast for changes in the physical docking state of the device. |
String |
ACTION_DREAMING_STARTED
Broadcast Action: Sent after the system starts dreaming. |
String |
ACTION_DREAMING_STOPPED
Broadcast Action: Sent after the system stops dreaming. |
String |
ACTION_EDIT
Activity Action: Provide explicit editable access to the given data. |
String |
ACTION_EXTERNAL_APPLICATIONS_AVAILABLE
Broadcast Action: Resources for a set of packages (which were previously unavailable) are currently available since the media on which they exist is available. |
String |
ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE
Broadcast Action: Resources for a set of packages are currently unavailable since the media on which they exist is unavailable. |
String |
ACTION_FACTORY_TEST
Activity Action: Main entry point for factory tests. |
String |
ACTION_GET_CONTENT
Activity Action: Allow the user to select a particular kind of data and return it. |
String |
ACTION_GET_RESTRICTION_ENTRIES
Broadcast to a specific application to query any supported restrictions to impose on restricted users. |
String |
ACTION_GTALK_SERVICE_CONNECTED
Broadcast Action: A GTalk connection has been established. |
String |
ACTION_GTALK_SERVICE_DISCONNECTED
Broadcast Action: A GTalk connection has been disconnected. |
String |
ACTION_HEADSET_PLUG
Broadcast Action: Wired Headset plugged in or unplugged. |
String |
ACTION_INPUT_METHOD_CHANGED
Broadcast Action: An input method has been changed. |
String |
ACTION_INSERT
Activity Action: Insert an empty item into the given container. |
String |
ACTION_INSERT_OR_EDIT
Activity Action: Pick an existing item, or insert a new item, and then edit it. |
String |
ACTION_INSTALL_FAILURE
Activity Action: Activity to handle split installation failures. |
String |
ACTION_INSTALL_PACKAGE
This constant was deprecated
in API level 29.
use |
String |
ACTION_LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE
Activity Action: Use with startActivityForResult to start a system activity that captures content on the screen to take a screenshot and present it to the user for editing. |
String |
ACTION_LOCALE_CHANGED
Broadcast Action: The receiver's effective locale has changed. |
String |
ACTION_LOCKED_BOOT_COMPLETED
Broadcast Action: This is broadcast once, after the user has finished booting, but while still in the "locked" state. |
String |
ACTION_MAIN
Activity Action: Start as a main entry point, does not expect to receive data. |
String |
ACTION_MANAGED_PROFILE_ADDED
Broadcast sent to the primary user when an associated managed profile is added (the profile was created and is ready to be used). |
String |
ACTION_MANAGED_PROFILE_AVAILABLE
Broadcast sent to the primary user when an associated managed profile has become available. |
String |
ACTION_MANAGED_PROFILE_REMOVED
Broadcast sent to the primary user when an associated managed profile is removed. |
String |
ACTION_MANAGED_PROFILE_UNAVAILABLE
Broadcast sent to the primary user when an associated managed profile has become unavailable. |
String |
ACTION_MANAGED_PROFILE_UNLOCKED
Broadcast sent to the primary user when the credential-encrypted private storage for an associated managed profile is unlocked. |
String |
ACTION_MANAGE_NETWORK_USAGE
Activity Action: Show settings for managing network data usage of a specific application. |
String |
ACTION_MANAGE_PACKAGE_STORAGE
Broadcast Action: Indicates low memory condition notification acknowledged by user and package management should be started. |
String |
ACTION_MANAGE_UNUSED_APPS
Activity action: Launch UI to manage unused apps (hibernated apps). |
String |
ACTION_MEDIA_BAD_REMOVAL
Broadcast Action: External media was removed from SD card slot, but mount point was not unmounted. |
String |
ACTION_MEDIA_BUTTON
Broadcast Action: The "Media Button" was pressed. |
String |
ACTION_MEDIA_CHECKING
Broadcast Action: External media is present, and being disk-checked The path to the mount point for the checking media is contained in the Intent.mData field. |
String |
ACTION_MEDIA_EJECT
Broadcast Action: User has expressed the desire to remove the external storage media. |
String |
ACTION_MEDIA_MOUNTED
Broadcast Action: External media is present and mounted at its mount point. |
String |
ACTION_MEDIA_NOFS
Broadcast Action: External media is present, but is using an incompatible fs (or is blank) The path to the mount point for the checking media is contained in the Intent.mData field. |
String |
ACTION_MEDIA_REMOVED
Broadcast Action: External media has been removed. |
String |
ACTION_MEDIA_SCANNER_FINISHED
Broadcast Action: The media scanner has finished scanning a directory. |
String |
ACTION_MEDIA_SCANNER_SCAN_FILE
This constant was deprecated
in API level 29.
Callers should migrate to inserting items directly into
|
String |
ACTION_MEDIA_SCANNER_STARTED
Broadcast Action: The media scanner has started scanning a directory. |
String |
ACTION_MEDIA_SHARED
Broadcast Action: External media is unmounted because it is being shared via USB mass storage. |
String |
ACTION_MEDIA_UNMOUNTABLE
Broadcast Action: External media is present but cannot be mounted. |
String |
ACTION_MEDIA_UNMOUNTED
Broadcast Action: External media is present, but not mounted at its mount point. |
String |
ACTION_MY_PACKAGE_REPLACED
Broadcast Action: A new version of your application has been installed over an existing one. |
String |
ACTION_MY_PACKAGE_SUSPENDED
Broadcast Action: Sent to a package that has been suspended by the system. |
String |
ACTION_MY_PACKAGE_UNSUSPENDED
Broadcast Action: Sent to a package that has been unsuspended. |
String |
ACTION_NEW_OUTGOING_CALL
This constant was deprecated
in API level 29.
Apps that redirect outgoing calls should use the
|
String |
ACTION_OPEN_DOCUMENT
Activity Action: Allow the user to select and return one or more existing documents. |
String |
ACTION_OPEN_DOCUMENT_TREE
Activity Action: Allow the user to pick a directory subtree. |
String |
ACTION_PACKAGES_SUSPENDED
Broadcast Action: Packages have been suspended. |
String |
ACTION_PACKAGES_UNSUSPENDED
Broadcast Action: Packages have been unsuspended. |
String |
ACTION_PACKAGE_ADDED
Broadcast Action: A new application package has been installed on the device. |
String |
ACTION_PACKAGE_CHANGED
Broadcast Action: An existing application package has been changed (for example, a component has been enabled or disabled). |
String |
ACTION_PACKAGE_DATA_CLEARED
Broadcast Action: The user has cleared the data of a package. |
String |
ACTION_PACKAGE_FIRST_LAUNCH
Broadcast Action: Sent to the installer package of an application when that application is first launched (that is the first time it is moved out of the stopped state). |
String |
ACTION_PACKAGE_FULLY_REMOVED
Broadcast Action: An existing application package has been completely removed from the device. |
String |
ACTION_PACKAGE_INSTALL
This constant was deprecated in API level 15. This constant has never been used. |
String |
ACTION_PACKAGE_NEEDS_VERIFICATION
Broadcast Action: Sent to the system package verifier when a package needs to be verified. |
String |
ACTION_PACKAGE_REMOVED
Broadcast Action: An existing application package has been removed from the device. |
String |
ACTION_PACKAGE_REPLACED
Broadcast Action: A new version of an application package has been installed, replacing an existing version that was previously installed. |
String |
ACTION_PACKAGE_RESTARTED
Broadcast Action: The user has restarted a package, and all of its processes have been killed. |
String |
ACTION_PACKAGE_UNSTOPPED
Broadcast Action: An application package that was previously in the stopped state has been started and is no longer considered stopped. |
String |
ACTION_PACKAGE_VERIFIED
Broadcast Action: Sent to the system package verifier when a package is verified. |
String |
ACTION_PASTE
Activity Action: Create a new item in the given container, initializing it from the current contents of the clipboard. |
String |
ACTION_PICK
Activity Action: Pick an item from the data, returning what was selected. |
String |
ACTION_PICK_ACTIVITY
Activity Action: Pick an activity given an intent, returning the class selected. |
String |
ACTION_POWER_CONNECTED
Broadcast Action: External power has been connected to the device. |
String |
ACTION_POWER_DISCONNECTED
Broadcast Action: External power has been removed from the device. |
String |
ACTION_POWER_USAGE_SUMMARY
Activity Action: Show power usage information to the user. |
String |
ACTION_PROCESS_TEXT
Activity Action: Process a piece of text. |
String |
ACTION_PROFILE_ACCESSIBLE
Broadcast sent to the parent user when an associated profile has been started and unlocked. |
String |
ACTION_PROFILE_ADDED
Broadcast sent to the parent user when an associated profile is added (the profile was created and is ready to be used). |
String |
ACTION_PROFILE_AVAILABLE
Broadcast sent to the primary user when an associated profile has become available. |
String |
ACTION_PROFILE_INACCESSIBLE
Broadcast sent to the parent user when an associated profile has stopped. |
String |
ACTION_PROFILE_REMOVED
Broadcast sent to the parent user when an associated profile is removed. |
String |
ACTION_PROFILE_UNAVAILABLE
Broadcast sent to the primary user when an associated profile has become unavailable. |
String |
ACTION_PROVIDER_CHANGED
Broadcast Action: Some content providers have parts of their namespace where they publish new events or items that the user may be especially interested in. |
String |
ACTION_QUICK_CLOCK
Sent when the user taps on the clock widget in the system's "quick settings" area. |
String |
ACTION_QUICK_VIEW
Activity Action: Quick view the data. |
String |
ACTION_REBOOT
Broadcast Action: Have the device reboot. |
String |
ACTION_RUN
Activity Action: Run the data, whatever that means. |
String |
ACTION_SAFETY_CENTER
Activity action: Launch UI to open the Safety Center, which highlights the user's security and privacy status. |
String |
ACTION_SCREEN_OFF
Broadcast Action: Sent when the device goes to sleep and becomes non-interactive. |
String |
ACTION_SCREEN_ON
Broadcast Action: Sent when the device wakes up and becomes interactive. |
String |
ACTION_SEARCH
Activity Action: Perform a search. |
String |
ACTION_SEARCH_LONG_PRESS
Activity Action: Start action associated with long pressing on the search key. |
String |
ACTION_SEND
Activity Action: Deliver some data to someone else. |
String |
ACTION_SENDTO
Activity Action: Send a message to someone specified by the data. |
String |
ACTION_SEND_MULTIPLE
Activity Action: Deliver multiple data to someone else. |
String |
ACTION_SET_WALLPAPER
Activity Action: Show settings for choosing wallpaper. |
String |
ACTION_SHOW_APP_INFO
Activity Action: Launch an activity showing the app information. |
String |
ACTION_SHOW_WORK_APPS
Activity Action: Action to show the list of all work apps in the launcher. |
String |
ACTION_SHUTDOWN
Broadcast Action: Device is shutting down. |
String |
ACTION_STOP_VOICE_COMMAND
Broadcast Action: Stop Voice Command. |
String |
ACTION_SYNC
Activity Action: Perform a data synchronization. |
String |
ACTION_SYSTEM_TUTORIAL
Activity Action: Start the platform-defined tutorial Input: |
String |
ACTION_TIMEZONE_CHANGED
Broadcast Action: The timezone has changed. |
String |
ACTION_TIME_CHANGED
Broadcast Action: The time was set. |
String |
ACTION_TIME_TICK
Broadcast Action: The current time has changed. |
String |
ACTION_TRANSLATE
Activity Action: Perform text translation. |
String |
ACTION_UID_REMOVED
Broadcast Action: A uid has been removed from the system. |
String |
ACTION_UMS_CONNECTED
This constant was deprecated in API level 15. replaced by android.os.storage.StorageEventListener |
String |
ACTION_UMS_DISCONNECTED
This constant was deprecated in API level 15. replaced by android.os.storage.StorageEventListener |
String |
ACTION_UNARCHIVE_PACKAGE
Broadcast Action: Sent to the responsible installer of an archived package when unarchival is requested. |
String |
ACTION_UNINSTALL_PACKAGE
This constant was deprecated
in API level 29.
Use |
String |
ACTION_USER_BACKGROUND
Sent after a user switch is complete, if the switch caused the process's user to be sent to the background. |
String |
ACTION_USER_FOREGROUND
Sent after a user switch is complete, if the switch caused the process's user to be brought to the foreground. |
String |
ACTION_USER_INITIALIZE
Sent the first time a user is starting, to allow system apps to perform one time initialization. |
String |
ACTION_USER_PRESENT
Broadcast Action: Sent when the user is present after device wakes up (e.g when the keyguard is gone). |
String |
ACTION_USER_UNLOCKED
Broadcast Action: Sent when the credential-encrypted private storage has become unlocked for the target user. |
String |
ACTION_VIEW
Activity Action: Display the data to the user. |
String |
ACTION_VIEW_LOCUS
Activity Action: Display an activity state associated with an unique |
String |
ACTION_VIEW_PERMISSION_USAGE
Activity action: Launch UI to show information about the usage of a given permission group. |
String |
ACTION_VIEW_PERMISSION_USAGE_FOR_PERIOD
Activity action: Launch UI to show information about the usage of a given permission group in a given period. |
String |
ACTION_VOICE_COMMAND
Activity Action: Start Voice Command. |
String |
ACTION_WALLPAPER_CHANGED
This constant was deprecated
in API level 16.
Modern applications should use
|
String |
ACTION_WEB_SEARCH
Activity Action: Perform a web search. |
int |
CAPTURE_CONTENT_FOR_NOTE_BLOCKED_BY_ADMIN
A response code used with |
int |
CAPTURE_CONTENT_FOR_NOTE_FAILED
A response code used with |
int |
CAPTURE_CONTENT_FOR_NOTE_SUCCESS
A response code used with |
int |
CAPTURE_CONTENT_FOR_NOTE_USER_CANCELED
A response code used with |
int |
CAPTURE_CONTENT_FOR_NOTE_WINDOW_MODE_UNSUPPORTED
A response code used with |
String |
CATEGORY_ACCESSIBILITY_SHORTCUT_TARGET
The accessibility shortcut is a global gesture for users with disabilities to trigger an important for them accessibility feature to help developers determine whether they want to make their activity a shortcut target. |
String |
CATEGORY_ALTERNATIVE
Set if the activity should be considered as an alternative action to the data the user is currently viewing. |
String |
CATEGORY_APP_BROWSER
Used with |
String |
CATEGORY_APP_CALCULATOR
Used with |
String |
CATEGORY_APP_CALENDAR
Used with |
String |
CATEGORY_APP_CONTACTS
Used with |
String |
CATEGORY_APP_EMAIL
Used with |
String |
CATEGORY_APP_FILES
Used with |
String |
CATEGORY_APP_FITNESS
Used with |
String |
CATEGORY_APP_GALLERY
Used with |
String |
CATEGORY_APP_MAPS
Used with |
String |
CATEGORY_APP_MARKET
This activity allows the user to browse and download new applications. |
String |
CATEGORY_APP_MESSAGING
Used with |
String |
CATEGORY_APP_MUSIC
Used with |
String |
CATEGORY_APP_WEATHER
Used with |
String |
CATEGORY_BROWSABLE
Activities that can be safely invoked from a browser must support this category. |
String |
CATEGORY_CAR_DOCK
An activity to run when device is inserted into a car dock. |
String |
CATEGORY_CAR_MODE
Used to indicate that the activity can be used in a car environment. |
String |
CATEGORY_DEFAULT
Set if the activity should be an option for the default action (center press) to perform on a piece of data. |
String |
CATEGORY_DESK_DOCK
An activity to run when device is inserted into a desk dock. |
String |
CATEGORY_DEVELOPMENT_PREFERENCE
This activity is a development preference panel. |
String |
CATEGORY_EMBED
Capable of running inside a parent activity container. |
String |
CATEGORY_FRAMEWORK_INSTRUMENTATION_TEST
To be used as code under test for framework instrumentation tests. |
String |
CATEGORY_HE_DESK_DOCK
An activity to run when device is inserted into a digital (high end) dock. |
String |
CATEGORY_HOME
This is the home activity, that is the first activity that is displayed when the device boots. |
String |
CATEGORY_INFO
Provides information about the package it is in; typically used if
a package does not contain a |
String |
CATEGORY_LAUNCHER
Should be displayed in the top-level launcher. |
String |
CATEGORY_LEANBACK_LAUNCHER
Indicates an activity optimized for Leanback mode, and that should be displayed in the Leanback launcher. |
String |
CATEGORY_LE_DESK_DOCK
An activity to run when device is inserted into a analog (low end) dock. |
String |
CATEGORY_MONKEY
This activity may be exercised by the monkey or other automated test tools. |
String |
CATEGORY_OPENABLE
Used to indicate that an intent only wants URIs that can be opened with
|
String |
CATEGORY_PREFERENCE
This activity is a preference panel. |
String |
CATEGORY_SAMPLE_CODE
To be used as a sample code example (not part of the normal user experience). |
String |
CATEGORY_SECONDARY_HOME
The home activity shown on secondary displays that support showing home activities. |
String |
CATEGORY_SELECTED_ALTERNATIVE
Set if the activity should be considered as an alternative selection action to the data the user has currently selected. |
String |
CATEGORY_TAB
Intended to be used as a tab inside of a containing TabActivity. |
String |
CATEGORY_TEST
To be used as a test (not part of the normal user experience). |
String |
CATEGORY_TYPED_OPENABLE
Used to indicate that an intent filter can accept files which are not necessarily
openable by |
String |
CATEGORY_UNIT_TEST
To be used as a unit test (run through the Test Harness). |
String |
CATEGORY_VOICE
Categories for activities that can participate in voice interaction. |
String |
CATEGORY_VR_HOME
An activity to use for the launcher when the device is placed in a VR Headset viewer. |
int |
CHOOSER_CONTENT_TYPE_ALBUM
Indicates that the content being shared with |
String |
EXTRA_ALARM_COUNT
Used as an int extra field in |
String |
EXTRA_ALLOW_MULTIPLE
Extra used to indicate that an intent can allow the user to select and return multiple items. |
String |
EXTRA_ALLOW_REPLACE
This constant was deprecated
in API level 16.
As of |
String |
EXTRA_ALTERNATE_INTENTS
An Intent[] describing additional, alternate choices you would like shown with
|
String |
EXTRA_ARCHIVAL
Used as a boolean extra field in |
String |
EXTRA_ASSIST_CONTEXT
An optional field on |
String |
EXTRA_ASSIST_INPUT_DEVICE_ID
An optional field on |
String |
EXTRA_ASSIST_INPUT_HINT_KEYBOARD
An optional field on |
String |
EXTRA_ASSIST_PACKAGE
An optional field on |
String |
EXTRA_ASSIST_UID
An optional field on |
String |
EXTRA_ATTRIBUTION_TAGS
A String[] holding attribution tags when used with
|
String |
EXTRA_AUTO_LAUNCH_SINGLE_CHOICE
Used as a boolean extra field in |
String |
EXTRA_BCC
A String[] holding e-mail addresses that should be blind carbon copied. |
String |
EXTRA_BUG_REPORT
Used as a parcelable extra field in |
String |
EXTRA_CAPTURE_CONTENT_FOR_NOTE_STATUS_CODE
An int extra used by activity started with
|
String |
EXTRA_CC
A String[] holding e-mail addresses that should be carbon copied. |
String |
EXTRA_CHANGED_COMPONENT_NAME
This constant was deprecated
in API level 15.
See |
String |
EXTRA_CHANGED_COMPONENT_NAME_LIST
This field is part of |
String |
EXTRA_CHANGED_PACKAGE_LIST
This field is part of
|
String |
EXTRA_CHANGED_UID_LIST
This field is part of
|
String |
EXTRA_CHOOSER_ADDITIONAL_CONTENT_URI
Optional argument used to provide a |
String |
EXTRA_CHOOSER_CONTENT_TYPE_HINT
Optional integer extra to be used with |
String |
EXTRA_CHOOSER_CUSTOM_ACTIONS
A Parcelable[] of |
String |
EXTRA_CHOOSER_FOCUSED_ITEM_POSITION
Optional argument to be used with |
String |
EXTRA_CHOOSER_MODIFY_SHARE_ACTION
Optional argument to be used with |
String |
EXTRA_CHOOSER_REFINEMENT_INTENT_SENDER
An |
String |
EXTRA_CHOOSER_RESULT
A |
String |
EXTRA_CHOOSER_RESULT_INTENT_SENDER
An |
String |
EXTRA_CHOOSER_TARGETS
A |
String |
EXTRA_CHOSEN_COMPONENT
The |
String |
EXTRA_CHOSEN_COMPONENT_INTENT_SENDER
An |
String |
EXTRA_COMPONENT_NAME
Intent extra: A |
String |
EXTRA_CONTENT_ANNOTATIONS
An |
String |
EXTRA_CONTENT_QUERY
Optional CharSequence extra to provide a search query. |
String |
EXTRA_DATA_REMOVED
Used as a boolean extra field in |
String |
EXTRA_DOCK_STATE
Used as an int extra field in |
int |
EXTRA_DOCK_STATE_CAR
Used as an int value for |
int |
EXTRA_DOCK_STATE_DESK
Used as an int value for |
int |
EXTRA_DOCK_STATE_HE_DESK
Used as an int value for |
int |
EXTRA_DOCK_STATE_LE_DESK
Used as an int value for |
int |
EXTRA_DOCK_STATE_UNDOCKED
Used as an int value for |
String |
EXTRA_DONT_KILL_APP
Used as a boolean extra field in |
String |
EXTRA_DURATION_MILLIS
Intent extra: The number of milliseconds. |
String |
EXTRA_EMAIL
A String[] holding e-mail addresses that should be delivered to. |
String |
EXTRA_END_TIME
A long representing the end timestamp (epoch time in millis) of the permission usage when
used with |
String |
EXTRA_EXCLUDE_COMPONENTS
A |
String |
EXTRA_FROM_STORAGE
Extra that can be included on activity intents coming from the storage UI when it launches sub-activities to manage various types of storage. |
String |
EXTRA_HTML_TEXT
A constant String that is associated with the Intent, used with
|
String |
EXTRA_INDEX
Optional index with semantics depending on the intent action. |
String |
EXTRA_INITIAL_INTENTS
A Parcelable[] of |
String |
EXTRA_INSTALLER_PACKAGE_NAME
Used as a string extra field with |
String |
EXTRA_INTENT
An Intent describing the choices you would like shown with
|
String |
EXTRA_KEY_EVENT
A |
String |
EXTRA_LOCALE_LIST
Intent extra: A Type: LocaleList |
String |
EXTRA_LOCAL_ONLY
Extra used to indicate that an intent should only return data that is on the local device. |
String |
EXTRA_LOCUS_ID
Intent extra: ID of the context used on |
String |
EXTRA_METADATA_TEXT
A CharSequence of additional text describing the content being shared. |
String |
EXTRA_MIME_TYPES
Extra used to communicate a set of acceptable MIME types. |
String |
EXTRA_NOT_UNKNOWN_SOURCE
Used as a boolean extra field with |
String |
EXTRA_ORIGINATING_URI
Used as a URI extra field with |
String |
EXTRA_PACKAGES
String array of package names. |
String |
EXTRA_PACKAGE_NAME
Intent extra: An app package name. |
String |
EXTRA_PERMISSION_GROUP_NAME
Intent extra: The name of a permission group. |
String |
EXTRA_PHONE_NUMBER
A String holding the phone number originally entered in
|
String |
EXTRA_PROCESS_TEXT
The name of the extra used to define the text to be processed, as a CharSequence. |
String |
EXTRA_PROCESS_TEXT_READONLY
The name of the boolean extra used to define if the processed text will be used as read-only. |
String |
EXTRA_QUICK_VIEW_FEATURES
An optional extra of |
String |
EXTRA_QUIET_MODE
Optional boolean extra indicating whether quiet mode has been switched on or off. |
String |
EXTRA_REFERRER
This extra can be used with any Intent used to launch an activity, supplying information about who is launching that activity. |
String |
EXTRA_REFERRER_NAME
Alternate version of |
String |
EXTRA_REMOTE_INTENT_TOKEN
Used in the extra field in the remote intent. |
String |
EXTRA_REPLACEMENT_EXTRAS
A Bundle forming a mapping of potential target package names to different extras Bundles
to add to the default intent extras in |
String |
EXTRA_REPLACING
Used as a boolean extra field in |
String |
EXTRA_RESTRICTIONS_BUNDLE
Extra sent in the intent to the BroadcastReceiver that handles
|
String |
EXTRA_RESTRICTIONS_INTENT
Extra used in the response from a BroadcastReceiver that handles
|
String |
EXTRA_RESTRICTIONS_LIST
Extra used in the response from a BroadcastReceiver that handles
|
String |
EXTRA_RESULT_RECEIVER
A |
String |
EXTRA_RETURN_RESULT
Used as a boolean extra field with |
String |
EXTRA_SHORTCUT_ICON
This constant was deprecated
in API level 26.
Replaced with |
String |
EXTRA_SHORTCUT_ICON_RESOURCE
This constant was deprecated
in API level 26.
Replaced with |
String |
EXTRA_SHORTCUT_ID
Intent extra: ID of the shortcut used to send the share intent. |
String |
EXTRA_SHORTCUT_INTENT
This constant was deprecated
in API level 26.
Replaced with |
String |
EXTRA_SHORTCUT_NAME
This constant was deprecated
in API level 26.
Replaced with |
String |
EXTRA_SHUTDOWN_USERSPACE_ONLY
Optional extra for |
String |
EXTRA_SPLIT_NAME
Intent extra: An app split name. |
String |
EXTRA_START_TIME
A long representing the start timestamp (epoch time in millis) of the permission usage
when used with |
String |
EXTRA_STREAM
A content: URI holding a stream of data associated with the Intent,
used with |
String |
EXTRA_SUBJECT
A constant string holding the desired subject line of a message. |
String |
EXTRA_SUSPENDED_PACKAGE_EXTRAS
Intent extra: A |
String |
EXTRA_TEMPLATE
The initial data to place in a newly created record. |
String |
EXTRA_TEXT
A constant CharSequence that is associated with the Intent, used with
|
String |
EXTRA_TIME
Optional extra specifying a time in milliseconds. |
String |
EXTRA_TIMEZONE
Extra sent with |
String |
EXTRA_TITLE
A CharSequence dialog title to provide to the user when used with a
|
String |
EXTRA_UID
Used as an int extra field in |
String |
EXTRA_USER
The |
String |
EXTRA_USER_INITIATED
Used as a boolean extra field in |
String |
EXTRA_USE_STYLUS_MODE
A boolean extra used with |
int |
FILL_IN_ACTION
Use with |
int |
FILL_IN_CATEGORIES
Use with |
int |
FILL_IN_CLIP_DATA
Use with |
int |
FILL_IN_COMPONENT
Use with |
int |
FILL_IN_DATA
Use with |
int |
FILL_IN_IDENTIFIER
Use with |
int |
FILL_IN_PACKAGE
Use with |
int |
FILL_IN_SELECTOR
Use with |
int |
FILL_IN_SOURCE_BOUNDS
Use with |
int |
FLAG_ACTIVITY_BROUGHT_TO_FRONT
This flag is not normally set by application code, but set for you by
the system as described in the
|
int |
FLAG_ACTIVITY_CLEAR_TASK
If set in an Intent passed to |
int |
FLAG_ACTIVITY_CLEAR_TOP
If set, and the activity being launched is already running in the current task, then instead of launching a new instance of that activity, all of the other activities on top of it will be closed and this Intent will be delivered to the (now on top) old activity as a new Intent. |
int |
FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET
This constant was deprecated
in API level 21.
As of API 21 this performs identically to
|
int |
FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS
If set, the new activity is not kept in the list of recently launched activities. |
int |
FLAG_ACTIVITY_FORWARD_RESULT
If set and this intent is being used to launch a new activity from an existing one, then the reply target of the existing activity will be transferred to the new activity. |
int |
FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY
This flag is not normally set by application code, but set for you by the system if this activity is being launched from history. |
int |
FLAG_ACTIVITY_LAUNCH_ADJACENT
This flag is only used for split-screen multi-window mode. |
int |
FLAG_ACTIVITY_MATCH_EXTERNAL
If set in an Intent passed to |
int |
FLAG_ACTIVITY_MULTIPLE_TASK
This flag is used to create a new task and launch an activity into it. |
int |
FLAG_ACTIVITY_NEW_DOCUMENT
This flag is used to open a document into a new task rooted at the activity launched by this Intent. |
int |
FLAG_ACTIVITY_NEW_TASK
If set, this activity will become the start of a new task on this history stack. |
int |
FLAG_ACTIVITY_NO_ANIMATION
If set in an Intent passed to |
int |
FLAG_ACTIVITY_NO_HISTORY
If set, the new activity is not kept in the history stack. |
int |
FLAG_ACTIVITY_NO_USER_ACTION
If set, this flag will prevent the normal |
int |
FLAG_ACTIVITY_PREVIOUS_IS_TOP
If set and this intent is being used to launch a new activity from an existing one, the current activity will not be counted as the top activity for deciding whether the new intent should be delivered to the top instead of starting a new one. |
int |
FLAG_ACTIVITY_REORDER_TO_FRONT
If set in an Intent passed to |
int |
FLAG_ACTIVITY_REQUIRE_DEFAULT
If set in an intent passed to |
int |
FLAG_ACTIVITY_REQUIRE_NON_BROWSER
If set in an intent passed to |
int |
FLAG_ACTIVITY_RESET_TASK_IF_NEEDED
If set, and this activity is either being started in a new task or bringing to the top an existing task, then it will be launched as the front door of the task. |
int |
FLAG_ACTIVITY_RETAIN_IN_RECENTS
By default a document created by |
int |
FLAG_ACTIVITY_SINGLE_TOP
If set, the activity will not be launched if it is already running at the top of the history stack. |
int |
FLAG_ACTIVITY_TASK_ON_HOME
If set in an Intent passed to |
int |
FLAG_DEBUG_LOG_RESOLUTION
A flag you can enable for debugging: when set, log messages will be printed during the resolution of this intent to show you what has been found to create the final resolved list. |
int |
FLAG_DIRECT_BOOT_AUTO
Flag used to automatically match intents based on their Direct Boot awareness and the current user state. |
int |
FLAG_EXCLUDE_STOPPED_PACKAGES
If set, this intent will not match any components in packages that are currently stopped. |
int |
FLAG_FROM_BACKGROUND
Can be set by the caller to indicate that this Intent is coming from a background operation, not from direct user interaction. |
int |
FLAG_GRANT_PERSISTABLE_URI_PERMISSION
When combined with |
int |
FLAG_GRANT_PREFIX_URI_PERMISSION
When combined with |
int |
FLAG_GRANT_READ_URI_PERMISSION
If set, the recipient of this Intent will be granted permission to perform read operations on the URI in the Intent's data and any URIs specified in its ClipData. |
int |
FLAG_GRANT_WRITE_URI_PERMISSION
If set, the recipient of this Intent will be granted permission to perform write operations on the URI in the Intent's data and any URIs specified in its ClipData. |
int |
FLAG_INCLUDE_STOPPED_PACKAGES
If set, this intent will always match any components in packages that are currently stopped. |
int |
FLAG_RECEIVER_FOREGROUND
If set, when sending a broadcast the recipient is allowed to run at foreground priority, with a shorter timeout interval. |
int |
FLAG_RECEIVER_NO_ABORT
If this is an ordered broadcast, don't allow receivers to abort the broadcast. |
int |
FLAG_RECEIVER_REGISTERED_ONLY
If set, when sending a broadcast only registered receivers will be called -- no BroadcastReceiver components will be launched. |
int |
FLAG_RECEIVER_REPLACE_PENDING
If set, when sending a broadcast the new broadcast will replace any existing pending broadcast that matches it. |
int |
FLAG_RECEIVER_VISIBLE_TO_INSTANT_APPS
If set, the broadcast will be visible to receivers in Instant Apps. |
String |
METADATA_DOCK_HOME
Boolean that can be supplied as meta-data with a dock activity, to indicate that the dock should take over the home key when it is active. |
int |
URI_ALLOW_UNSAFE
Flag for use with |
int |
URI_ANDROID_APP_SCHEME
Flag for use with |
int |
URI_INTENT_SCHEME
Flag for use with |
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<Intent> |
CREATOR
|
Public constructors | |
---|---|
Intent()
Create an empty intent. |
|
Intent(Context packageContext, Class<?> cls)
Create an intent for a specific component. |
|
Intent(Intent o)
Copy constructor. |
|
Intent(String action)
Create an intent with a given action. |
|
Intent(String action, Uri uri)
Create an intent with a given action and for a given data url. |
|
Intent(String action, Uri uri, Context packageContext, Class<?> cls)
Create an intent for a specific component with a specified action and data. |
Public methods | |
---|---|
Intent
|
addCategory(String category)
Add a new category to the intent. |
Intent
|
addFlags(int flags)
Add additional flags to the intent (or with existing flags value). |
Object
|
clone()
Creates and returns a copy of this object. |
Intent
|
cloneFilter()
Make a clone of only the parts of the Intent that are relevant for filter matching: the action, data, type, component, and categories. |
static
Intent
|
createChooser(Intent target, CharSequence title, IntentSender sender)
Convenience function for creating a |
static
Intent
|
createChooser(Intent target, CharSequence title)
Convenience function for creating a |
int
|
describeContents()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
int
|
fillIn(Intent other, int flags)
Copy the contents of other in to this object, but only where fields are not defined by this object. |
boolean
|
filterEquals(Intent other)
Determine if two intents are the same for the purposes of intent resolution (filtering). |
int
|
filterHashCode()
Generate hash code that matches semantics of filterEquals(). |
String
|
getAction()
Retrieve the general action to be performed, such as
|
boolean[]
|
getBooleanArrayExtra(String name)
Retrieve extended data from the intent. |
boolean
|
getBooleanExtra(String name, boolean defaultValue)
Retrieve extended data from the intent. |
Bundle
|
getBundleExtra(String name)
Retrieve extended data from the intent. |
byte[]
|
getByteArrayExtra(String name)
Retrieve extended data from the intent. |
byte
|
getByteExtra(String name, byte defaultValue)
Retrieve extended data from the intent. |
Set<String>
|
getCategories()
Return the set of all categories in the intent. |
char[]
|
getCharArrayExtra(String name)
Retrieve extended data from the intent. |
char
|
getCharExtra(String name, char defaultValue)
Retrieve extended data from the intent. |
CharSequence[]
|
getCharSequenceArrayExtra(String name)
Retrieve extended data from the intent. |
ArrayList<CharSequence>
|
getCharSequenceArrayListExtra(String name)
Retrieve extended data from the intent. |
CharSequence
|
getCharSequenceExtra(String name)
Retrieve extended data from the intent. |
ClipData
|
getClipData()
Return the |
ComponentName
|
getComponent()
Retrieve the concrete component associated with the intent. |
Uri
|
getData()
Retrieve data this intent is operating on. |
String
|
getDataString()
The same as |
double[]
|
getDoubleArrayExtra(String name)
Retrieve extended data from the intent. |
double
|
getDoubleExtra(String name, double defaultValue)
Retrieve extended data from the intent. |
Bundle
|
getExtras()
Retrieves a map of extended data from the intent. |
int
|
getFlags()
Retrieve any special flags associated with this intent. |
float[]
|
getFloatArrayExtra(String name)
Retrieve extended data from the intent. |
float
|
getFloatExtra(String name, float defaultValue)
Retrieve extended data from the intent. |
String
|
getIdentifier()
Retrieve the identifier for this Intent. |
int[]
|
getIntArrayExtra(String name)
Retrieve extended data from the intent. |
int
|
getIntExtra(String name, int defaultValue)
Retrieve extended data from the intent. |
ArrayList<Integer>
|
getIntegerArrayListExtra(String name)
Retrieve extended data from the intent. |
static
Intent
|
getIntent(String uri)
This method was deprecated
in API level 15.
Use |
static
Intent
|
getIntentOld(String uri)
|
long[]
|
getLongArrayExtra(String name)
Retrieve extended data from the intent. |
long
|
getLongExtra(String name, long defaultValue)
Retrieve extended data from the intent. |
String
|
getPackage()
Retrieve the application package name this Intent is limited to. |
Parcelable[]
|
getParcelableArrayExtra(String name)
This method was deprecated
in API level 33.
Use the type-safer |
<T>
T[]
|
getParcelableArrayExtra(String name, Class<T> clazz)
Retrieve extended data from the intent. |
<T>
ArrayList<T>
|
getParcelableArrayListExtra(String name, Class<? extends T> clazz)
Retrieve extended data from the intent. |
<T extends Parcelable>
ArrayList<T>
|
getParcelableArrayListExtra(String name)
This method was deprecated
in API level 33.
Use the type-safer |
<T extends Parcelable>
T
|
getParcelableExtra(String name)
This method was deprecated
in API level 33.
Use the type-safer |
<T>
T
|
getParcelableExtra(String name, Class<T> clazz)
Retrieve extended data from the intent. |
String
|
getScheme()
Return the scheme portion of the intent's data. |
Intent
|
getSelector()
Return the specific selector associated with this Intent. |
<T extends Serializable>
T
|
getSerializableExtra(String name, Class<T> clazz)
Retrieve extended data from the intent. |
Serializable
|
getSerializableExtra(String name)
This method was deprecated
in API level 33.
Use the type-safer |
short[]
|
getShortArrayExtra(String name)
Retrieve extended data from the intent. |
short
|
getShortExtra(String name, short defaultValue)
Retrieve extended data from the intent. |
Rect
|
getSourceBounds()
Get the bounds of the sender of this intent, in screen coordinates. |
String[]
|
getStringArrayExtra(String name)
Retrieve extended data from the intent. |
ArrayList<String>
|
getStringArrayListExtra(String name)
Retrieve extended data from the intent. |
String
|
getStringExtra(String name)
Retrieve extended data from the intent. |
String
|
getType()
Retrieve any explicit MIME type included in the intent. |
boolean
|
hasCategory(String category)
Check if a category exists in the intent. |
boolean
|
hasExtra(String name)
Returns true if an extra value is associated with the given name. |
boolean
|
hasFileDescriptors()
Returns true if the Intent's extras contain a parcelled file descriptor. |
boolean
|
isMismatchingFilter()
Whether the intent mismatches all intent filters declared in the receiving component. |
static
Intent
|
makeMainActivity(ComponentName mainActivity)
Create an intent to launch the main (root) activity of a task. |
static
Intent
|
makeMainSelectorActivity(String selectorAction, String selectorCategory)
Make an Intent for the main activity of an application, without specifying a specific activity to run but giving a selector to find the activity. |
static
Intent
|
makeRestartActivityTask(ComponentName mainActivity)
Make an Intent that can be used to re-launch an application's task in its base state. |
static
String
|
normalizeMimeType(String type)
Normalize a MIME data type. |
static
Intent
|
parseIntent(Resources resources, XmlPullParser parser, AttributeSet attrs)
Parses the "intent" element (and its children) from XML and instantiates an Intent object. |
static
Intent
|
parseUri(String uri, int flags)
Create an intent from a URI. |
Intent
|
putCharSequenceArrayListExtra(String name, ArrayList<CharSequence> value)
Add extended data to the intent. |
Intent
|
putExtra(String name, Parcelable value)
Add extended data to the intent. |
Intent
|
putExtra(String name, long[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, byte value)
Add extended data to the intent. |
Intent
|
putExtra(String name, double[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, CharSequence value)
Add extended data to the intent. |
Intent
|
putExtra(String name, boolean[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, int value)
Add extended data to the intent. |
Intent
|
putExtra(String name, char[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, byte[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, Parcelable[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, Bundle value)
Add extended data to the intent. |
Intent
|
putExtra(String name, CharSequence[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, float[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, double value)
Add extended data to the intent. |
Intent
|
putExtra(String name, int[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, String[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, short[] value)
Add extended data to the intent. |
Intent
|
putExtra(String name, boolean value)
Add extended data to the intent. |
Intent
|
putExtra(String name, String value)
Add extended data to the intent. |
Intent
|
putExtra(String name, long value)
Add extended data to the intent. |
Intent
|
putExtra(String name, char value)
Add extended data to the intent. |
Intent
|
putExtra(String name, Serializable value)
Add extended data to the intent. |
Intent
|
putExtra(String name, float value)
Add extended data to the intent. |
Intent
|
putExtra(String name, short value)
Add extended data to the intent. |
Intent
|
putExtras(Intent src)
Copy all extras in 'src' in to this intent. |
Intent
|
putExtras(Bundle extras)
Add a set of extended data to the intent. |
Intent
|
putIntegerArrayListExtra(String name, ArrayList<Integer> value)
Add extended data to the intent. |
Intent
|
putParcelableArrayListExtra(String name, ArrayList<? extends Parcelable> value)
Add extended data to the intent. |
Intent
|
putStringArrayListExtra(String name, ArrayList<String> value)
Add extended data to the intent. |
void
|
readFromParcel(Parcel in)
|
void
|
removeCategory(String category)
Remove a category from an intent. |
void
|
removeExtra(String name)
Remove extended data from the intent. |
void
|
removeFlags(int flags)
Remove these flags from the intent. |
void
|
removeLaunchSecurityProtection()
When an intent comes from another app or component as an embedded extra intent, the system creates a token to identify the creator of this foreign intent. |
Intent
|
replaceExtras(Intent src)
Completely replace the extras in the Intent with the extras in the given Intent. |
Intent
|
replaceExtras(Bundle extras)
Completely replace the extras in the Intent with the given Bundle of extras. |
ComponentName
|
resolveActivity(PackageManager pm)
Return the Activity component that should be used to handle this intent. |
ActivityInfo
|
resolveActivityInfo(PackageManager pm, int flags)
Resolve the Intent into an |
String
|
resolveType(Context context)
Return the MIME data type of this intent. |
String
|
resolveType(ContentResolver resolver)
Return the MIME data type of this intent. |
String
|
resolveTypeIfNeeded(ContentResolver resolver)
Return the MIME data type of this intent, only if it will be needed for intent resolution. |
Intent
|
setAction(String action)
Set the general action to be performed. |
Intent
|
setClass(Context packageContext, Class<?> cls)
Convenience for calling |
Intent
|
setClassName(String packageName, String className)
Convenience for calling |
Intent
|
setClassName(Context packageContext, String className)
Convenience for calling |
void
|
setClipData(ClipData clip)
Set a |
Intent
|
setComponent(ComponentName component)
(Usually optional) Explicitly set the component to handle the intent. |
Intent
|
setData(Uri data)
Set the data this intent is operating on. |
Intent
|
setDataAndNormalize(Uri data)
Normalize and set the data this intent is operating on. |
Intent
|
setDataAndType(Uri data, String type)
(Usually optional) Set the data for the intent along with an explicit MIME data type. |
Intent
|
setDataAndTypeAndNormalize(Uri data, String type)
(Usually optional) Normalize and set both the data Uri and an explicit MIME data type. |
void
|
setExtrasClassLoader(ClassLoader loader)
Sets the ClassLoader that will be used when unmarshalling any Parcelable values from the extras of this Intent. |
Intent
|
setFlags(int flags)
Set special flags controlling how this intent is handled. |
Intent
|
setIdentifier(String identifier)
Set an identifier for this Intent. |
Intent
|
setPackage(String packageName)
(Usually optional) Set an explicit application package name that limits the components this Intent will resolve to. |
void
|
setSelector(Intent selector)
Set a selector for this Intent. |
void
|
setSourceBounds(Rect r)
Set the bounds of the sender of this intent, in screen coordinates. |
Intent
|
setType(String type)
Set an explicit MIME data type. |
Intent
|
setTypeAndNormalize(String type)
Normalize and set an explicit MIME data type. |
String
|
toString()
Returns a string representation of the object. |
String
|
toURI()
This method was deprecated
in API level 15.
Use |
String
|
toUri(int flags)
Convert this Intent into a String holding a URI representation of it. |
void
|
writeToParcel(Parcel out, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
Constants
ACTION_AIRPLANE_MODE_CHANGED
public static final String ACTION_AIRPLANE_MODE_CHANGED
Broadcast Action: The user has switched the phone into or out of Airplane Mode. One or more radios have been turned off or on. The intent will have the following extra value:
- state - A boolean value indicating whether Airplane Mode is on. If true, then cell radio and possibly other radios such as bluetooth or WiFi may have also been turned off
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.AIRPLANE_MODE"
ACTION_ALL_APPS
public static final String ACTION_ALL_APPS
Activity Action: List all available applications.
Input: Nothing.
Output: nothing.
Constant Value: "android.intent.action.ALL_APPS"
ACTION_ANSWER
public static final String ACTION_ANSWER
Activity Action: Handle an incoming phone call.
Input: nothing.
Output: nothing.
Constant Value: "android.intent.action.ANSWER"
ACTION_APPLICATION_LOCALE_CHANGED
public static final String ACTION_APPLICATION_LOCALE_CHANGED
Broadcast Action: Locale of a particular app has changed.
This broadcast is explicitly sent to the
InstallSourceInfo.getInstallingPackageName()
installer
of the app whose locale has changed.
The broadcast could also be received by manifest-declared receivers with
android.permission.READ_APP_SPECIFIC_LOCALES
This is a protected intent that can only be sent by the system.
Includes the following extras:
EXTRA_PACKAGE_NAME
is the name of the package for which locale changed.EXTRA_LOCALE_LIST
contains locales that are currently set for specified app
Constant Value: "android.intent.action.APPLICATION_LOCALE_CHANGED"
ACTION_APPLICATION_PREFERENCES
public static final String ACTION_APPLICATION_PREFERENCES
An activity that provides a user interface for adjusting application preferences. Optional but recommended settings for all applications which have settings.
Constant Value: "android.intent.action.APPLICATION_PREFERENCES"
ACTION_APPLICATION_RESTRICTIONS_CHANGED
public static final String ACTION_APPLICATION_RESTRICTIONS_CHANGED
Broadcast Action: Sent after application restrictions are changed.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.APPLICATION_RESTRICTIONS_CHANGED"
ACTION_APP_ERROR
public static final String ACTION_APP_ERROR
Activity Action: The user pressed the "Report" button in the crash/ANR dialog. This intent is delivered to the package which installed the application, usually Google Play.
Input: No data is specified. The bug report is passed in using
an EXTRA_BUG_REPORT
field.
Output: Nothing.
See also:
Constant Value: "android.intent.action.APP_ERROR"
ACTION_ASSIST
public static final String ACTION_ASSIST
Activity Action: Perform assist action.
Input: EXTRA_ASSIST_PACKAGE
, EXTRA_ASSIST_CONTEXT
, can provide
additional optional contextual information about where the user was when they
requested the assist; EXTRA_REFERRER
may be set with additional referrer
information.
Output: nothing.
Constant Value: "android.intent.action.ASSIST"
ACTION_ATTACH_DATA
public static final String ACTION_ATTACH_DATA
Used to indicate that some piece of data should be attached to some other place. For example, image data could be attached to a contact. It is up to the recipient to decide where the data should be attached; the intent does not specify the ultimate destination.
Input: getData()
is URI of data to be attached.
Output: nothing.
Constant Value: "android.intent.action.ATTACH_DATA"
ACTION_AUTO_REVOKE_PERMISSIONS
public static final String ACTION_AUTO_REVOKE_PERMISSIONS
Activity action: Launch UI to manage auto-revoke state. This is equivalent to Intent#ACTION_APPLICATION_DETAILS_SETTINGS
Input: data
should be a package
-scheme Uri
with
a package name, whose auto-revoke state will be reviewed (mandatory).
E.g. Uri.fromParts("package", packageName, null)
Output: Nothing.
Constant Value: "android.intent.action.AUTO_REVOKE_PERMISSIONS"
ACTION_BATTERY_CHANGED
public static final String ACTION_BATTERY_CHANGED
Broadcast Action: This is a sticky broadcast containing the
charging state, level, and other information about the battery.
See BatteryManager
for documentation on the
contents of the Intent.
You cannot receive this through components declared
in manifests, only by explicitly registering for it with
Context.registerReceiver()
. See ACTION_BATTERY_LOW
,
ACTION_BATTERY_OKAY
, ACTION_POWER_CONNECTED
,
and ACTION_POWER_DISCONNECTED
for distinct battery-related
broadcasts that are sent and can be received through manifest
receivers.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.BATTERY_CHANGED"
ACTION_BATTERY_LOW
public static final String ACTION_BATTERY_LOW
Broadcast Action: Indicates low battery condition on the device. This broadcast corresponds to the "Low battery warning" system dialog.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.BATTERY_LOW"
ACTION_BATTERY_OKAY
public static final String ACTION_BATTERY_OKAY
Broadcast Action: Indicates the battery is now okay after being low.
This will be sent after ACTION_BATTERY_LOW
once the battery has
gone back up to an okay state.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.BATTERY_OKAY"
ACTION_BOOT_COMPLETED
public static final String ACTION_BOOT_COMPLETED
Broadcast Action: This is broadcast once, after the user has finished
booting. It can be used to perform application-specific initialization,
such as installing alarms. You must hold the
Manifest.permission.RECEIVE_BOOT_COMPLETED
permission in
order to receive this broadcast.
This broadcast is sent at boot by all devices (both with and without direct boot support). Upon receipt of this broadcast, the user is unlocked and both device-protected and credential-protected storage can accessed safely.
If you need to run while the user is still locked (before they've entered
their lock pattern or PIN for the first time), you can listen for the
ACTION_LOCKED_BOOT_COMPLETED
broadcast.
Starting from Android Build.VERSION_CODES.VANILLA_ICE_CREAM
, this broadcast is
not only sent after the device boots but also delivered to an app when it is
removed from the Stopped
state and the user is
unlocked, such as the first launch after force-stopping the app.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.BOOT_COMPLETED"
ACTION_BUG_REPORT
public static final String ACTION_BUG_REPORT
Activity Action: Show activity for reporting a bug.
Input: Nothing.
Output: Nothing.
Constant Value: "android.intent.action.BUG_REPORT"
ACTION_CALL
public static final String ACTION_CALL
Activity Action: Perform a call to someone specified by the data.
Input: If nothing, an empty dialer is started; else getData()
is URI of a phone number to be dialed or a tel: URI of an explicit phone
number.
Output: nothing.
Note: there will be restrictions on which applications can initiate a
call; most applications should use the ACTION_DIAL
.
Note: this Intent cannot be used to call emergency
numbers. Applications can dial emergency numbers using
ACTION_DIAL
, however.
Note: This Intent can only be used to dial call forwarding MMI codes if the application
using this intent is set as the default or system dialer. The system will treat any other
application using this Intent for the purpose of dialing call forwarding MMI codes as if the
ACTION_DIAL
Intent was used instead.
Note: An app filling the RoleManager.ROLE_DIALER
role should use
TelecomManager.placeCall(Uri, Bundle)
to place calls rather than
relying on this intent.
Note: If your app targets M
or higher and declares as using the Manifest.permission.CALL_PHONE
permission which is not granted, then attempting to use this action will
result in a SecurityException
.
Constant Value: "android.intent.action.CALL"
ACTION_CALL_BUTTON
public static final String ACTION_CALL_BUTTON
Activity Action: The user pressed the "call" button to go to the dialer or other appropriate UI for placing a call.
Input: Nothing.
Output: Nothing.
Constant Value: "android.intent.action.CALL_BUTTON"
ACTION_CAMERA_BUTTON
public static final String ACTION_CAMERA_BUTTON
Broadcast Action: The "Camera Button" was pressed. Includes a single
extra field, EXTRA_KEY_EVENT
, containing the key event that
caused the broadcast.
Constant Value: "android.intent.action.CAMERA_BUTTON"
ACTION_CARRIER_SETUP
public static final String ACTION_CARRIER_SETUP
Activity Action: Main entry point for carrier setup apps.
Carrier apps that provide an implementation for this action may be invoked to configure
carrier service and typically require
carrier privileges
to
fulfill their duties.
Constant Value: "android.intent.action.CARRIER_SETUP"
ACTION_CHOOSER
public static final String ACTION_CHOOSER
Activity Action: Display an activity chooser, allowing the user to pick what they want to before proceeding. This can be used as an alternative to the standard activity picker that is displayed by the system when you try to start an activity with multiple possible matches, with these differences in behavior:
- You can specify the title that will appear in the activity chooser.
- The user does not have the option to make one of the matching activities a preferred activity, and all possible activities will always be shown even if one of them is currently marked as the preferred activity.
This action should be used when the user will naturally expect to select an activity in order to proceed. An example if when not to use it is when the user clicks on a "mailto:" link. They would naturally expect to go directly to their mail app, so startActivity() should be called directly: it will either launch the current preferred app, or put up a dialog allowing the user to pick an app to use and optionally marking that as preferred.
In contrast, if the user is selecting a menu item to send a picture they are viewing to someone else, there are many different things they may want to do at this point: send it through e-mail, upload it to a web service, etc. In this case the CHOOSER action should be used, to always present to the user a list of the things they can do, with a nice title given by the caller such as "Send this photo with:".
If you need to grant URI permissions through a chooser, you must specify
the permissions to be granted on the ACTION_CHOOSER Intent
in addition to the EXTRA_INTENT inside. This means using
setClipData(ClipData)
to specify the URIs to be granted as well as
FLAG_GRANT_READ_URI_PERMISSION
and/or
FLAG_GRANT_WRITE_URI_PERMISSION
as appropriate.
As a convenience, an Intent of this form can be created with the
createChooser(Intent, CharSequence)
function.
Input: No data should be specified. get*Extra must have
a EXTRA_INTENT
field containing the Intent being executed,
and can optionally have a EXTRA_TITLE
field containing the
title text to display in the chooser.
Output: Depends on the protocol of EXTRA_INTENT
.
Constant Value: "android.intent.action.CHOOSER"
ACTION_CLOSE_SYSTEM_DIALOGS
public static final String ACTION_CLOSE_SYSTEM_DIALOGS
This constant was deprecated
in API level 31.
This intent is deprecated for third-party applications starting from Android
Build.VERSION_CODES.S
for security reasons. Unauthorized usage by applications
will result in the broadcast intent being dropped for apps targeting API level less than
Build.VERSION_CODES.S
and in a SecurityException
for apps targeting SDK
level Build.VERSION_CODES.S
or higher. Instrumentation initiated from the shell
(eg. tests) is still able to use the intent. The platform will automatically collapse
the proper system dialogs in the proper use-cases. For all others, the user is the one in
control of closing dialogs.
Broadcast Action: This is broadcast when a user action should request a
temporary system dialog to dismiss. Some examples of temporary system
dialogs are the notification window-shade and the recent tasks dialog.
Requires android.Manifest.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS
Constant Value: "android.intent.action.CLOSE_SYSTEM_DIALOGS"
ACTION_CONFIGURATION_CHANGED
public static final String ACTION_CONFIGURATION_CHANGED
Broadcast Action: The current device Configuration
(orientation, locale, etc) has changed. When such a change happens, the
UIs (view hierarchy) will need to be rebuilt based on this new
information; for the most part, applications don't need to worry about
this, because the system will take care of stopping and restarting the
application to make sure it sees the new changes. Some system code that
can not be restarted will need to watch for this action and handle it
appropriately.
You cannot receive this through components declared
in manifests, only by explicitly registering for it with
Context.registerReceiver()
.
This is a protected intent that can only be sent by the system.
See also:
Constant Value: "android.intent.action.CONFIGURATION_CHANGED"
ACTION_CREATE_DOCUMENT
public static final String ACTION_CREATE_DOCUMENT
Activity Action: Allow the user to create a new document. When invoked,
the system will display the various DocumentsProvider
instances
installed on the device, letting the user navigate through them. The
returned document may be a newly created document with no content, or it
may be an existing document with the requested MIME type.
Each document is represented as a content://
URI backed by a
DocumentsProvider
, which can be opened as a stream with
ContentResolver.openFileDescriptor(Uri, String)
, or queried for
DocumentsContract.Document
metadata.
Callers must indicate the concrete MIME type of the document being
created by setting setType(java.lang.String)
. This MIME type cannot be
changed after the document is created.
Callers can provide an initial display name through EXTRA_TITLE
,
but the user may change this value before creating the file.
Callers must include CATEGORY_OPENABLE
in the Intent to obtain
URIs that can be opened with
ContentResolver.openFileDescriptor(Uri, String)
.
Callers can set a document URI through
DocumentsContract.EXTRA_INITIAL_URI
to indicate the initial
location of documents navigator. System will do its best to launch the
navigator in the specified document if it's a folder, or the folder that
contains the specified document if not.
Output: The URI of the item that was created. This must be a
content://
URI so that any receiver can access it.
See also:
Constant Value: "android.intent.action.CREATE_DOCUMENT"
ACTION_CREATE_NOTE
public static final String ACTION_CREATE_NOTE
Activity Action: Starts a note-taking activity that can be used to create a note. This action
can be used to start an activity on the lock screen. Activity should ensure to appropriately
handle privacy sensitive data and features when launched on the lock screen. See
KeyguardManager
for lock screen checks.
Constant Value: "android.intent.action.CREATE_NOTE"
ACTION_CREATE_REMINDER
public static final String ACTION_CREATE_REMINDER
Activity Action: Creates a reminder.
Input: EXTRA_TITLE
The title of the reminder that will be shown to the user.
EXTRA_TEXT
The reminder text that will be shown to the user. The intent should at
least specify a title or a text. EXTRA_TIME
The time when the reminder will
be shown to the user. The time is specified in milliseconds since the Epoch (optional).
Output: Nothing.
See also:
Constant Value: "android.intent.action.CREATE_REMINDER"
ACTION_CREATE_SHORTCUT
public static final String ACTION_CREATE_SHORTCUT
Activity Action: Creates a shortcut.
Input: Nothing.
Output: An Intent representing the ShortcutInfo
result.
For compatibility with older versions of android the intent may also contain three extras: SHORTCUT_INTENT (value: Intent), SHORTCUT_NAME (value: String), and SHORTCUT_ICON (value: Bitmap) or SHORTCUT_ICON_RESOURCE (value: ShortcutIconResource).
See also:
Constant Value: "android.intent.action.CREATE_SHORTCUT"
ACTION_DATE_CHANGED
public static final String ACTION_DATE_CHANGED
Broadcast Action: The date has changed.
Constant Value: "android.intent.action.DATE_CHANGED"
ACTION_DEFAULT
public static final String ACTION_DEFAULT
A synonym for ACTION_VIEW
, the "standard" action that is
performed on a piece of data.
Constant Value: "android.intent.action.VIEW"
ACTION_DEFINE
public static final String ACTION_DEFINE
Activity Action: Define the meaning of the selected word(s).
Input: getCharSequence(EXTRA_TEXT)
is the text to define.
Output: nothing.
Constant Value: "android.intent.action.DEFINE"
ACTION_DELETE
public static final String ACTION_DELETE
Activity Action: Delete the given data from its container.
Input: getData()
is URI of data to be deleted.
Output: nothing.
Constant Value: "android.intent.action.DELETE"
ACTION_DEVICE_STORAGE_LOW
public static final String ACTION_DEVICE_STORAGE_LOW
This constant was deprecated
in API level 26.
if your app targets Build.VERSION_CODES.O
or above, this broadcast will no longer be delivered to any
BroadcastReceiver
defined in your manifest. Instead,
apps are strongly encouraged to use the improved
Context.getCacheDir()
behavior so the system can
automatically free up storage when needed.
Broadcast Action: A sticky broadcast that indicates low storage space condition on the device
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.DEVICE_STORAGE_LOW"
ACTION_DEVICE_STORAGE_OK
public static final String ACTION_DEVICE_STORAGE_OK
This constant was deprecated
in API level 26.
if your app targets Build.VERSION_CODES.O
or above, this broadcast will no longer be delivered to any
BroadcastReceiver
defined in your manifest. Instead,
apps are strongly encouraged to use the improved
Context.getCacheDir()
behavior so the system can
automatically free up storage when needed.
Broadcast Action: Indicates low storage space condition on the device no longer exists
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.DEVICE_STORAGE_OK"
ACTION_DIAL
public static final String ACTION_DIAL
Activity Action: Dial a number as specified by the data. This shows a UI with the number being dialed, allowing the user to explicitly initiate the call.
Input: If nothing, an empty dialer is started; else getData()
is URI of a phone number to be dialed or a tel: URI of an explicit phone
number.
Output: nothing.
Constant Value: "android.intent.action.DIAL"
ACTION_DOCK_EVENT
public static final String ACTION_DOCK_EVENT
Broadcast Action: A sticky broadcast for changes in the physical docking state of the device.
The intent will have the following extra values:
EXTRA_DOCK_STATE
- the current dock state, indicating which dock the device is physically in.
This is intended for monitoring the current physical dock state.
See UiModeManager
for the normal API dealing with
dock mode changes.
Constant Value: "android.intent.action.DOCK_EVENT"
ACTION_DREAMING_STARTED
public static final String ACTION_DREAMING_STARTED
Broadcast Action: Sent after the system starts dreaming.
This is a protected intent that can only be sent by the system. It is only sent to registered receivers.
Constant Value: "android.intent.action.DREAMING_STARTED"
ACTION_DREAMING_STOPPED
public static final String ACTION_DREAMING_STOPPED
Broadcast Action: Sent after the system stops dreaming.
This is a protected intent that can only be sent by the system. It is only sent to registered receivers.
Constant Value: "android.intent.action.DREAMING_STOPPED"
ACTION_EDIT
public static final String ACTION_EDIT
Activity Action: Provide explicit editable access to the given data.
Input: getData()
is URI of data to be edited.
Output: nothing.
Constant Value: "android.intent.action.EDIT"
ACTION_EXTERNAL_APPLICATIONS_AVAILABLE
public static final String ACTION_EXTERNAL_APPLICATIONS_AVAILABLE
Broadcast Action: Resources for a set of packages (which were
previously unavailable) are currently
available since the media on which they exist is available.
The extra data EXTRA_CHANGED_PACKAGE_LIST
contains a
list of packages whose availability changed.
The extra data EXTRA_CHANGED_UID_LIST
contains a
list of uids of packages whose availability changed.
Note that the
packages in this list do not receive this broadcast.
The specified set of packages are now available on the system.
Includes the following extras:
-
EXTRA_CHANGED_PACKAGE_LIST
is the set of packages whose resources(were previously unavailable) are currently available.EXTRA_CHANGED_UID_LIST
is the set of uids of the packages whose resources(were previously unavailable) are currently available.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE"
ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE
public static final String ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE
Broadcast Action: Resources for a set of packages are currently
unavailable since the media on which they exist is unavailable.
The extra data EXTRA_CHANGED_PACKAGE_LIST
contains a
list of packages whose availability changed.
The extra data EXTRA_CHANGED_UID_LIST
contains a
list of uids of packages whose availability changed.
The specified set of packages can no longer be
launched and are practically unavailable on the system.
Inclues the following extras:
-
EXTRA_CHANGED_PACKAGE_LIST
is the set of packages whose resources are no longer available.EXTRA_CHANGED_UID_LIST
is the set of packages whose resources are no longer available.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE"
ACTION_FACTORY_TEST
public static final String ACTION_FACTORY_TEST
Activity Action: Main entry point for factory tests. Only used when the device is booting in factory test node. The implementing package must be installed in the system image.
Input: nothing
Output: nothing
Constant Value: "android.intent.action.FACTORY_TEST"
ACTION_GET_CONTENT
public static final String ACTION_GET_CONTENT
Activity Action: Allow the user to select a particular kind of data and
return it. This is different than ACTION_PICK
in that here we
just say what kind of data is desired, not a URI of existing data from
which the user can pick. An ACTION_GET_CONTENT could allow the user to
create the data as it runs (for example taking a picture or recording a
sound), let them browse over the web and download the desired data,
etc.
There are two main ways to use this action: if you want a specific kind
of data, such as a person contact, you set the MIME type to the kind of
data you want and launch it with Context.startActivity(Intent)
.
The system will then launch the best application to select that kind
of data for you.
You may also be interested in any of a set of types of content the user can pick. For example, an e-mail application that wants to allow the user to add an attachment to an e-mail message can use this action to bring up a list of all of the types of content the user can attach.
In this case, you should wrap the GET_CONTENT intent with a chooser
(through createChooser(Intent, CharSequence)
), which will give the proper interface
for the user to pick how to send your data and allow you to specify
a prompt indicating what they are doing. You will usually specify a
broad MIME type (such as image/* or */*), resulting in a
broad range of content types the user can select from.
When using such a broad GET_CONTENT action, it is often desirable to
only pick from data that can be represented as a stream. This is
accomplished by requiring the CATEGORY_OPENABLE
in the Intent.
Callers can optionally specify EXTRA_LOCAL_ONLY
to request that
the launched content chooser only returns results representing data that
is locally available on the device. For example, if this extra is set
to true then an image picker should not show any pictures that are available
from a remote server but not already on the local device (thus requiring
they be downloaded when opened).
If the caller can handle multiple returned items (the user performing
multiple selection), then it can specify EXTRA_ALLOW_MULTIPLE
to indicate this.
Input: getType()
is the desired MIME type to retrieve. Note
that no URI is supplied in the intent, as there are no constraints on
where the returned data originally comes from. You may also include the
CATEGORY_OPENABLE
if you can only accept data that can be
opened as a stream. You may use EXTRA_LOCAL_ONLY
to limit content
selection to local data. You may use EXTRA_ALLOW_MULTIPLE
to
allow the user to select multiple items.
Output: The URI of the item that was picked. This must be a content: URI so that any receiver can access it.
Constant Value: "android.intent.action.GET_CONTENT"
ACTION_GET_RESTRICTION_ENTRIES
public static final String ACTION_GET_RESTRICTION_ENTRIES
Broadcast to a specific application to query any supported restrictions to impose
on restricted users. The broadcast intent contains an extra
EXTRA_RESTRICTIONS_BUNDLE
with the currently persisted
restrictions as a Bundle of key/value pairs. The value types can be Boolean, String or
String[] depending on the restriction type.
EXTRA_RESTRICTIONS_LIST
,
which is of type ArrayList<RestrictionEntry>
. It can also
contain an extra EXTRA_RESTRICTIONS_INTENT
, which is of type Intent
.
The activity specified by that intent will be launched for a result which must contain
one of the extras EXTRA_RESTRICTIONS_LIST
or EXTRA_RESTRICTIONS_BUNDLE
.
The keys and values of the returned restrictions will be persisted.
See also:
Constant Value: "android.intent.action.GET_RESTRICTION_ENTRIES"
ACTION_GTALK_SERVICE_CONNECTED
public static final String ACTION_GTALK_SERVICE_CONNECTED
Broadcast Action: A GTalk connection has been established.
Constant Value: "android.intent.action.GTALK_CONNECTED"
ACTION_GTALK_SERVICE_DISCONNECTED
public static final String ACTION_GTALK_SERVICE_DISCONNECTED
Broadcast Action: A GTalk connection has been disconnected.
Constant Value: "android.intent.action.GTALK_DISCONNECTED"
ACTION_HEADSET_PLUG
public static final String ACTION_HEADSET_PLUG
Broadcast Action: Wired Headset plugged in or unplugged.
Same as AudioManager.ACTION_HEADSET_PLUG
, to be consulted for value
and documentation.
If the minimum SDK version of your application is
Build.VERSION_CODES.LOLLIPOP
, it is recommended to refer
to the AudioManager
constant in your receiver registration code instead.
Constant Value: "android.intent.action.HEADSET_PLUG"
ACTION_INPUT_METHOD_CHANGED
public static final String ACTION_INPUT_METHOD_CHANGED
Broadcast Action: An input method has been changed.
Constant Value: "android.intent.action.INPUT_METHOD_CHANGED"
ACTION_INSERT
public static final String ACTION_INSERT
Activity Action: Insert an empty item into the given container.
Input: getData()
is URI of the directory (vnd.android.cursor.dir/*)
in which to place the data.
Output: URI of the new data that was created.
Constant Value: "android.intent.action.INSERT"
ACTION_INSERT_OR_EDIT
public static final String ACTION_INSERT_OR_EDIT
Activity Action: Pick an existing item, or insert a new item, and then edit it.
Input: getType()
is the desired MIME type of the item to create or edit.
The extras can contain type specific data to pass through to the editing/creating
activity.
Output: The URI of the item that was picked. This must be a content: URI so that any receiver can access it.
Constant Value: "android.intent.action.INSERT_OR_EDIT"
ACTION_INSTALL_FAILURE
public static final String ACTION_INSTALL_FAILURE
Activity Action: Activity to handle split installation failures.
Splits may be installed dynamically. This happens when an Activity is launched, but the split that contains the application isn't installed. When a split is installed in this manner, the containing package usually doesn't know this is happening. However, if an error occurs during installation, the containing package can define a single activity handling this action to deal with such failures.
The activity handling this action must be in the base package.
Input: EXTRA_INTENT
the original intent that started split installation.
EXTRA_SPLIT_NAME
the name of the split that failed to be installed.
Constant Value: "android.intent.action.INSTALL_FAILURE"
ACTION_INSTALL_PACKAGE
public static final String ACTION_INSTALL_PACKAGE
This constant was deprecated
in API level 29.
use PackageInstaller
instead
Activity Action: Launch application installer.
Input: The data must be a content: URI at which the application
can be retrieved. As of
Output: If
Note:If your app is targeting API level higher than 25 you
need to hold Build.VERSION_CODES.JELLY_BEAN_MR1
,
you can also use "package:EXTRA_INSTALLER_PACKAGE_NAME
, EXTRA_NOT_UNKNOWN_SOURCE
,
EXTRA_ALLOW_REPLACE
, and EXTRA_RETURN_RESULT
.
EXTRA_RETURN_RESULT
, returns whether the install
succeeded.
Manifest.permission.REQUEST_INSTALL_PACKAGES
in order to launch the application installer.
Constant Value: "android.intent.action.INSTALL_PACKAGE"
ACTION_LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE
public static final String ACTION_LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE
Activity Action: Use with startActivityForResult to start a system activity that captures
content on the screen to take a screenshot and present it to the user for editing. The
edited screenshot is saved on device and returned to the calling activity as a Uri
through getData()
. User interaction is required to return the edited screenshot to
the calling activity.
The response Intent
may include additional data to "backlink" directly back to the
application for which the screenshot was captured. If present, the application "backlink" can
be retrieved via getClipData()
. The data is present only if the user accepted to
include the link information with the screenshot. The data can contain one of the following:
- A deeplinking
Uri
or anIntent
if the captured app integrates withAssistContent
. - Otherwise, a main launcher intent that launches the screenshotted application to its home screen.
ClipData
, either
as a Uri
or an Intent
if present.
This intent action requires the permission
Manifest.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE
.
Callers should query
StatusBarManager.canLaunchCaptureContentActivityForNote(Activity)
before showing a UI
element that allows users to trigger this flow.
Callers should query for EXTRA_CAPTURE_CONTENT_FOR_NOTE_STATUS_CODE
in the
response Intent
to check if the request was a success.
Requires Manifest.permission.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE
Constant Value: "android.intent.action.LAUNCH_CAPTURE_CONTENT_ACTIVITY_FOR_NOTE"
ACTION_LOCALE_CHANGED
public static final String ACTION_LOCALE_CHANGED
Broadcast Action: The receiver's effective locale has changed.
This happens when the device locale, the receiving app's locale
(set via LocaleManager.setApplicationLocales(LocaleList)
) or language tags
of Regional preferences changed.
Can be received by manifest-declared receivers.
If only the app locale changed, includes the following extras:
EXTRA_PACKAGE_NAME
is the name of the package for which locale changed.EXTRA_LOCALE_LIST
contains locales that are currently set for specified app
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.LOCALE_CHANGED"
ACTION_LOCKED_BOOT_COMPLETED
public static final String ACTION_LOCKED_BOOT_COMPLETED
Broadcast Action: This is broadcast once, after the user has finished
booting, but while still in the "locked" state. It can be used to perform
application-specific initialization, such as installing alarms. You must
hold the Manifest.permission.RECEIVE_BOOT_COMPLETED
permission in order to receive this broadcast.
This broadcast is sent immediately at boot by all devices (regardless of
direct boot support) running Build.VERSION_CODES.N
or
higher. Upon receipt of this broadcast, the user is still locked and only
device-protected storage can be accessed safely. If you want to access
credential-protected storage, you need to wait for the user to be
unlocked (typically by entering their lock pattern or PIN for the first
time), after which the ACTION_USER_UNLOCKED
and
ACTION_BOOT_COMPLETED
broadcasts are sent.
To receive this broadcast, your receiver component must be marked as
being ComponentInfo.directBootAware
.
Starting from Android Build.VERSION_CODES.VANILLA_ICE_CREAM
, this broadcast is
not only sent after the device boots but also delivered to an app when it is
removed from the Stopped
state, such as the first
launch after force-stopping the app.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.LOCKED_BOOT_COMPLETED"
ACTION_MAIN
public static final String ACTION_MAIN
Activity Action: Start as a main entry point, does not expect to receive data.
Input: nothing
Output: nothing
Constant Value: "android.intent.action.MAIN"
ACTION_MANAGED_PROFILE_ADDED
public static final String ACTION_MANAGED_PROFILE_ADDED
Broadcast sent to the primary user when an associated managed profile is added (the profile
was created and is ready to be used). Carries an extra EXTRA_USER
that specifies
the UserHandle
of the profile that was added. Only applications (for example
Launchers) that need to display merged content across both primary and managed profiles need
to worry about this broadcast. This is only sent to registered receivers,
not manifest receivers.
Constant Value: "android.intent.action.MANAGED_PROFILE_ADDED"
ACTION_MANAGED_PROFILE_AVAILABLE
public static final String ACTION_MANAGED_PROFILE_AVAILABLE
Broadcast sent to the primary user when an associated managed profile has become available.
Currently this includes when the user disables quiet mode for the profile. Carries an extra
EXTRA_USER
that specifies the UserHandle
of the profile. When quiet mode is
changed, this broadcast will carry a boolean extra EXTRA_QUIET_MODE
indicating the
new state of quiet mode. This is only sent to registered receivers, not manifest receivers.
Constant Value: "android.intent.action.MANAGED_PROFILE_AVAILABLE"
ACTION_MANAGED_PROFILE_REMOVED
public static final String ACTION_MANAGED_PROFILE_REMOVED
Broadcast sent to the primary user when an associated managed profile is removed.
Carries an extra EXTRA_USER
that specifies the UserHandle
of the profile
that was removed.
Only applications (for example Launchers) that need to display merged content across both
primary and managed profiles need to worry about this broadcast. This is only sent to
registered receivers, not manifest receivers.
Constant Value: "android.intent.action.MANAGED_PROFILE_REMOVED"
ACTION_MANAGED_PROFILE_UNAVAILABLE
public static final String ACTION_MANAGED_PROFILE_UNAVAILABLE
Broadcast sent to the primary user when an associated managed profile has become unavailable.
Currently this includes when the user enables quiet mode for the profile. Carries an extra
EXTRA_USER
that specifies the UserHandle
of the profile. When quiet mode is
changed, this broadcast will carry a boolean extra EXTRA_QUIET_MODE
indicating the
new state of quiet mode. This is only sent to registered receivers, not manifest receivers.
Constant Value: "android.intent.action.MANAGED_PROFILE_UNAVAILABLE"
ACTION_MANAGED_PROFILE_UNLOCKED
public static final String ACTION_MANAGED_PROFILE_UNLOCKED
Broadcast sent to the primary user when the credential-encrypted private storage for
an associated managed profile is unlocked. Carries an extra EXTRA_USER
that
specifies the UserHandle
of the profile that was unlocked. Only applications (for
example Launchers) that need to display merged content across both primary and managed
profiles need to worry about this broadcast. This is only sent to registered receivers,
not manifest receivers.
Constant Value: "android.intent.action.MANAGED_PROFILE_UNLOCKED"
ACTION_MANAGE_NETWORK_USAGE
public static final String ACTION_MANAGE_NETWORK_USAGE
Activity Action: Show settings for managing network data usage of a specific application. Applications should define an activity that offers options to control data usage.
Constant Value: "android.intent.action.MANAGE_NETWORK_USAGE"
ACTION_MANAGE_PACKAGE_STORAGE
public static final String ACTION_MANAGE_PACKAGE_STORAGE
Broadcast Action: Indicates low memory condition notification acknowledged by user and package management should be started. This is triggered by the user from the ACTION_DEVICE_STORAGE_LOW notification.
Constant Value: "android.intent.action.MANAGE_PACKAGE_STORAGE"
ACTION_MANAGE_UNUSED_APPS
public static final String ACTION_MANAGE_UNUSED_APPS
Activity action: Launch UI to manage unused apps (hibernated apps).
Input: Nothing.
Output: Nothing.
Constant Value: "android.intent.action.MANAGE_UNUSED_APPS"
ACTION_MEDIA_BAD_REMOVAL
public static final String ACTION_MEDIA_BAD_REMOVAL
Broadcast Action: External media was removed from SD card slot, but mount point was not unmounted. The path to the mount point for the removed media is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_BAD_REMOVAL"
ACTION_MEDIA_BUTTON
public static final String ACTION_MEDIA_BUTTON
Broadcast Action: The "Media Button" was pressed. Includes a single
extra field, EXTRA_KEY_EVENT
, containing the key event that
caused the broadcast.
Constant Value: "android.intent.action.MEDIA_BUTTON"
ACTION_MEDIA_CHECKING
public static final String ACTION_MEDIA_CHECKING
Broadcast Action: External media is present, and being disk-checked The path to the mount point for the checking media is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_CHECKING"
ACTION_MEDIA_EJECT
public static final String ACTION_MEDIA_EJECT
Broadcast Action: User has expressed the desire to remove the external storage media. Applications should close all files they have open within the mount point when they receive this intent. The path to the mount point for the media to be ejected is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_EJECT"
ACTION_MEDIA_MOUNTED
public static final String ACTION_MEDIA_MOUNTED
Broadcast Action: External media is present and mounted at its mount point. The path to the mount point for the mounted media is contained in the Intent.mData field. The Intent contains an extra with name "read-only" and Boolean value to indicate if the media was mounted read only.
Constant Value: "android.intent.action.MEDIA_MOUNTED"
ACTION_MEDIA_NOFS
public static final String ACTION_MEDIA_NOFS
Broadcast Action: External media is present, but is using an incompatible fs (or is blank) The path to the mount point for the checking media is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_NOFS"
ACTION_MEDIA_REMOVED
public static final String ACTION_MEDIA_REMOVED
Broadcast Action: External media has been removed. The path to the mount point for the removed media is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_REMOVED"
ACTION_MEDIA_SCANNER_FINISHED
public static final String ACTION_MEDIA_SCANNER_FINISHED
Broadcast Action: The media scanner has finished scanning a directory. The path to the scanned directory is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_SCANNER_FINISHED"
ACTION_MEDIA_SCANNER_SCAN_FILE
public static final String ACTION_MEDIA_SCANNER_SCAN_FILE
This constant was deprecated
in API level 29.
Callers should migrate to inserting items directly into
MediaStore
, where they will be automatically scanned
after each mutation.
Broadcast Action: Request the media scanner to scan a file and add it to the media database.
The path to the file is contained in Intent.getData()
.
Constant Value: "android.intent.action.MEDIA_SCANNER_SCAN_FILE"
ACTION_MEDIA_SCANNER_STARTED
public static final String ACTION_MEDIA_SCANNER_STARTED
Broadcast Action: The media scanner has started scanning a directory. The path to the directory being scanned is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_SCANNER_STARTED"
ACTION_MEDIA_SHARED
public static final String ACTION_MEDIA_SHARED
Broadcast Action: External media is unmounted because it is being shared via USB mass storage. The path to the mount point for the shared media is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_SHARED"
ACTION_MEDIA_UNMOUNTABLE
public static final String ACTION_MEDIA_UNMOUNTABLE
Broadcast Action: External media is present but cannot be mounted. The path to the mount point for the unmountable media is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_UNMOUNTABLE"
ACTION_MEDIA_UNMOUNTED
public static final String ACTION_MEDIA_UNMOUNTED
Broadcast Action: External media is present, but not mounted at its mount point. The path to the mount point for the unmounted media is contained in the Intent.mData field.
Constant Value: "android.intent.action.MEDIA_UNMOUNTED"
ACTION_MY_PACKAGE_REPLACED
public static final String ACTION_MY_PACKAGE_REPLACED
Broadcast Action: A new version of your application has been installed over an existing one. This is only sent to the application that was replaced. It does not contain any additional data; to receive it, just use an intent filter for this action.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.MY_PACKAGE_REPLACED"
ACTION_MY_PACKAGE_SUSPENDED
public static final String ACTION_MY_PACKAGE_SUSPENDED
Broadcast Action: Sent to a package that has been suspended by the system. This is sent whenever a package is put into a suspended state or any of its app extras change while in the suspended state.
Optionally includes the following extras:
-
EXTRA_SUSPENDED_PACKAGE_EXTRAS
which is aBundle
which will contain useful information for the app being suspended.
This is a protected intent that can only be sent
by the system. This will be delivered to BroadcastReceiver
components declared in
the manifest.
See also:
Constant Value: "android.intent.action.MY_PACKAGE_SUSPENDED"
ACTION_MY_PACKAGE_UNSUSPENDED
public static final String ACTION_MY_PACKAGE_UNSUSPENDED
Broadcast Action: Sent to a package that has been unsuspended.
This is a protected intent that can only be sent
by the system. This will be delivered to BroadcastReceiver
components declared in
the manifest.
See also:
Constant Value: "android.intent.action.MY_PACKAGE_UNSUSPENDED"
ACTION_NEW_OUTGOING_CALL
public static final String ACTION_NEW_OUTGOING_CALL
This constant was deprecated
in API level 29.
Apps that redirect outgoing calls should use the
CallRedirectionService
API. Apps that perform call screening
should use the CallScreeningService
API. Apps which need to be
notified of basic call state should use
TelephonyCallback.CallStateListener
to determine when a new
outgoing call is placed.
Broadcast Action: An outgoing call is about to be placed.
The Intent will have the following extra value:
EXTRA_PHONE_NUMBER
- the phone number dialed.
Starting in Android 15, this broadcast is no longer sent as an ordered
broadcast. The resultData
no longer has any effect and will not determine the
actual routing of the call. Further, receivers of this broadcast do not get foreground
priority and cannot launch background activities.
Once the broadcast is finished, the resultData is used as the actual
number to call. If null
, no call will be placed.
It is perfectly acceptable for multiple receivers to process the outgoing call in turn: for example, a parental control application might verify that the user is authorized to place the call at that time, then a number-rewriting application might add an area code if one was not specified.
For consistency, any receiver whose purpose is to prohibit phone calls should have a priority of 0, to ensure it will see the final phone number to be dialed. Any receiver whose purpose is to rewrite phone numbers to be called should have a positive priority. Negative priorities are reserved for the system for this broadcast; using them may cause problems.
Any BroadcastReceiver receiving this Intent must not abort the broadcast.
Emergency calls cannot be intercepted using this mechanism, and other calls cannot be modified to call emergency numbers using this mechanism.
Some apps (such as VoIP apps) may want to redirect the outgoing
call to use their own service instead. Those apps should first prevent
the call from being placed by setting resultData to null
and then start their own app to make the call.
You must hold the
Manifest.permission.PROCESS_OUTGOING_CALLS
permission to receive this Intent.
Starting in Build.VERSION_CODES.VANILLA_ICE_CREAM
, this broadcast is
no longer sent as an ordered broadcast, and does not allow activity launches. This means
that receivers may no longer change the phone number for the outgoing call, or cancel the
outgoing call. This functionality is only possible using the
CallRedirectionService
API. Although background receivers are
woken up to handle this intent, no guarantee is made as to the timeliness of the broadcast.
This is a protected intent that can only be sent by the system.
If the user has chosen a CallRedirectionService
to
handle redirection of outgoing calls, this intent will NOT be sent as an ordered broadcast.
This means that attempts to re-write the outgoing call by other apps using this intent will
be ignored.
Constant Value: "android.intent.action.NEW_OUTGOING_CALL"
ACTION_OPEN_DOCUMENT
public static final String ACTION_OPEN_DOCUMENT
Activity Action: Allow the user to select and return one or more existing
documents. When invoked, the system will display the various
DocumentsProvider
instances installed on the device, letting the
user interactively navigate through them. These documents include local
media, such as photos and video, and documents provided by installed
cloud storage providers.
Each document is represented as a content://
URI backed by a
DocumentsProvider
, which can be opened as a stream with
ContentResolver.openFileDescriptor(Uri, String)
, or queried for
DocumentsContract.Document
metadata.
All selected documents are returned to the calling application with
persistable read and write permission grants. If you want to maintain
access to the documents across device reboots, you need to explicitly
take the persistable permissions using
ContentResolver.takePersistableUriPermission(Uri, int)
.
Callers must indicate the acceptable document MIME types through
setType(java.lang.String)
. For example, to select photos, use
image/*
. If multiple disjoint MIME types are acceptable, define
them in EXTRA_MIME_TYPES
and setType(java.lang.String)
to
*/*.
If the caller can handle multiple returned items (the user performing
multiple selection), then you can specify EXTRA_ALLOW_MULTIPLE
to indicate this.
Callers must include CATEGORY_OPENABLE
in the Intent to obtain
URIs that can be opened with
ContentResolver.openFileDescriptor(Uri, String)
.
Callers can set a document URI through
DocumentsContract.EXTRA_INITIAL_URI
to indicate the initial
location of documents navigator. System will do its best to launch the
navigator in the specified document if it's a folder, or the folder that
contains the specified document if not.
Output: The URI of the item that was picked, returned in
getData()
. This must be a content://
URI so that any
receiver can access it. If multiple documents were selected, they are
returned in getClipData()
.
See also:
Constant Value: "android.intent.action.OPEN_DOCUMENT"
ACTION_OPEN_DOCUMENT_TREE
public static final String ACTION_OPEN_DOCUMENT_TREE
Activity Action: Allow the user to pick a directory subtree. When
invoked, the system will display the various DocumentsProvider
instances installed on the device, letting the user navigate through
them. Apps can fully manage documents within the returned directory.
To gain access to descendant (child, grandchild, etc) documents, use
DocumentsContract.buildDocumentUriUsingTree(Uri, String)
and
DocumentsContract.buildChildDocumentsUriUsingTree(Uri, String)
with the returned URI.
Callers can set a document URI through
DocumentsContract.EXTRA_INITIAL_URI
to indicate the initial
location of documents navigator. System will do its best to launch the
navigator in the specified document if it's a folder, or the folder that
contains the specified document if not.
Output: The URI representing the selected directory tree.
See also:
Constant Value: "android.intent.action.OPEN_DOCUMENT_TREE"
ACTION_PACKAGES_SUSPENDED
public static final String ACTION_PACKAGES_SUSPENDED
Broadcast Action: Packages have been suspended.
Includes the following extras:
-
EXTRA_CHANGED_PACKAGE_LIST
is the set of packages which have been suspended -
EXTRA_CHANGED_UID_LIST
is the set of uids which have been suspended
This is a protected intent that can only be sent by the system. It is only sent to registered receivers.
Constant Value: "android.intent.action.PACKAGES_SUSPENDED"
ACTION_PACKAGES_UNSUSPENDED
public static final String ACTION_PACKAGES_UNSUSPENDED
Broadcast Action: Packages have been unsuspended.
Includes the following extras:
-
EXTRA_CHANGED_PACKAGE_LIST
is the set of packages which have been unsuspended -
EXTRA_CHANGED_UID_LIST
is the set of uids which have been unsuspended
This is a protected intent that can only be sent by the system. It is only sent to registered receivers.
Constant Value: "android.intent.action.PACKAGES_UNSUSPENDED"
ACTION_PACKAGE_ADDED
public static final String ACTION_PACKAGE_ADDED
Broadcast Action: A new application package has been installed on the device. The data contains the name of the package. Note that the newly installed package does not receive this broadcast.
May include the following extras:
-
EXTRA_UID
containing the integer uid assigned to the new package. -
EXTRA_REPLACING
is set to true if this is following anACTION_PACKAGE_REMOVED
broadcast for the same package.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_ADDED"
ACTION_PACKAGE_CHANGED
public static final String ACTION_PACKAGE_CHANGED
Broadcast Action: An existing application package has been changed (for example, a component has been enabled or disabled). The data contains the name of the package.
-
EXTRA_UID
containing the integer uid assigned to the package. -
EXTRA_CHANGED_COMPONENT_NAME_LIST
containing the class name of the changed components (or the package name itself). -
EXTRA_DONT_KILL_APP
containing boolean field to override the default action of restarting the application.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_CHANGED"
ACTION_PACKAGE_DATA_CLEARED
public static final String ACTION_PACKAGE_DATA_CLEARED
Broadcast Action: The user has cleared the data of a package. This should
be preceded by ACTION_PACKAGE_RESTARTED
, after which all of
its persistent data is erased and this broadcast sent.
Note that the cleared package does not
receive this broadcast. The data contains the name of the package.
-
EXTRA_UID
containing the integer uid assigned to the package. If the package whose data was cleared is an uninstalled instant app, then the UID will be -1. The platform keeps some meta-data associated with instant apps after they are uninstalled. -
EXTRA_PACKAGE_NAME
containing the package name only if the cleared data was for an instant app.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_DATA_CLEARED"
ACTION_PACKAGE_FIRST_LAUNCH
public static final String ACTION_PACKAGE_FIRST_LAUNCH
Broadcast Action: Sent to the installer package of an application when that application is first launched (that is the first time it is moved out of the stopped state). The data contains the name of the package.
When the application is first launched, the application itself doesn't receive this broadcast.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_FIRST_LAUNCH"
ACTION_PACKAGE_FULLY_REMOVED
public static final String ACTION_PACKAGE_FULLY_REMOVED
Broadcast Action: An existing application package has been completely
removed from the device. The data contains the name of the package.
This is like ACTION_PACKAGE_REMOVED
, but only set when
EXTRA_DATA_REMOVED
is true and
EXTRA_REPLACING
is false of that broadcast.
-
EXTRA_UID
containing the integer uid previously assigned to the package.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_FULLY_REMOVED"
ACTION_PACKAGE_INSTALL
public static final String ACTION_PACKAGE_INSTALL
This constant was deprecated
in API level 15.
This constant has never been used.
Broadcast Action: Trigger the download and eventual installation of a package.
Input: getData()
is the URI of the package file to download.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_INSTALL"
ACTION_PACKAGE_NEEDS_VERIFICATION
public static final String ACTION_PACKAGE_NEEDS_VERIFICATION
Broadcast Action: Sent to the system package verifier when a package needs to be verified. The data contains the package URI.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_NEEDS_VERIFICATION"
ACTION_PACKAGE_REMOVED
public static final String ACTION_PACKAGE_REMOVED
Broadcast Action: An existing application package has been removed from the device. The data contains the name of the package. The package that is being removed does not receive this Intent.
-
EXTRA_UID
containing the integer uid previously assigned to the package. -
EXTRA_DATA_REMOVED
is set to true if the entire application -- data and code -- is being removed. -
EXTRA_REPLACING
is set to true if this will be followed by anACTION_PACKAGE_ADDED
broadcast for the same package. -
EXTRA_USER_INITIATED
containing boolean field to signal that the application was removed with the user-initiated action.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_REMOVED"
ACTION_PACKAGE_REPLACED
public static final String ACTION_PACKAGE_REPLACED
Broadcast Action: A new version of an application package has been installed, replacing an existing version that was previously installed. The data contains the name of the package.
May include the following extras:
-
EXTRA_UID
containing the integer uid assigned to the new package.
This is a protected intent that can only be sent by the system.
Constant Value: "android.intent.action.PACKAGE_REPLACED"
ACTION_PACKAGE_RESTARTED
public static final String ACTION_PACKAGE_RESTARTED
Broadcast Action: The user has restarted a package, and all of its processes have been killed. All runtime state associated with it (processes, alarms, notifications, etc) should be removed. Note that the restarted package does not receive this broadcast. The data contains the name of the package.
-
EXTRA_UID
containing the integer uid assigned to the package.
This is a protected intent that can only be sent by the system.
Starting in Android V, an extra timestamp