# Print output for @column tags ?>
Developers

- Design
- Develop
- Distribute

Developer Console

## Most visited

## Recently visited

## Results for

Summary: Inherited Constants | Inherited Fields | Ctors | Methods | Protected Methods | Inherited Methods

# ExpandableListActivity

`public class ExpandableListActivity`
`` `` `` `` `extends Activity` `implements View.OnCreateContextMenuListener, ExpandableListView.OnChildClickListener, ExpandableListView.OnGroupCollapseListener, ExpandableListView.OnGroupExpandListener`

java.lang.Object
↳ | android.content.Context
| ↳ | android.content.ContextWrapper
|  | ↳ | android.view.ContextThemeWrapper
|  |  | ↳ | android.app.Activity
|  |  |  | ↳ | android.app.ExpandableListActivity

This class is deprecated.
Use `RecyclerView` or use `ExpandableListView` directly

An activity that displays an expandable list of items by binding to a data source implementing the ExpandableListAdapter, and exposes event handlers when the user selects an item.

ExpandableListActivity hosts a `ExpandableListView` object that can be bound to different data sources that provide a two-levels of data (the top-level is group, and below each group are children). Binding, screen layout, and row layout are discussed in the following sections.

Screen Layout

ExpandableListActivity has a default layout that consists of a single, full-screen, centered expandable list. However, if you desire, you can customize the screen layout by setting your own view layout with setContentView() in onCreate(). To do this, your own view MUST contain an ExpandableListView object with the id "@android:id/list" (or `R.id.list` if it's in code)

Optionally, your custom view can contain another view object of any type to display when the list view is empty. This "empty list" notifier must have an id "android:empty". Note that when an empty view is present, the expandable list view will be hidden when there is no data to display.

The following code demonstrates an (ugly) custom screen layout. It has a list with a green background, and an alternate red "no data" message.

     <?xml version="1.0" encoding="UTF-8"?>
     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
             android:orientation="vertical"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:paddingLeft="8dp"
             android:paddingRight="8dp">

         <ExpandableListView android:id="@id/android:list"
                   android:layout_width="match_parent"
                   android:layout_height="match_parent"
                   android:background="#00FF00"
                   android:layout_weight="1"
                   android:drawSelectorOnTop="false"/>

         <TextView android:id="@id/android:empty"
                   android:layout_width="match_parent"
                   android:layout_height="match_parent"
                   android:background="#FF0000"
                   android:text="No data"/>
     </LinearLayout>

Row Layout

The `ExpandableListAdapter` set in the `ExpandableListActivity` via `setListAdapter(android.widget.ExpandableListAdapter)` provides the `View`s for each row. This adapter has separate methods for providing the group `View`s and child `View`s. There are a couple provided `ExpandableListAdapter`s that simplify use of adapters: `SimpleCursorTreeAdapter` and `SimpleExpandableListAdapter`.

With these, you can specify the layout of individual rows for groups and children in the list. These constructor takes a few parameters that specify layout resources for groups and children. It also has additional parameters that let you specify which data field to associate with which object in the row layout resource. The `SimpleCursorTreeAdapter` fetches data from `Cursor`s and the `SimpleExpandableListAdapter` fetches data from `List`s of `Map`s.

Android provides some standard row layout resources. These are in the `R.layout` class, and have names such as simple_list_item_1, simple_list_item_2, and two_line_list_item. The following layout XML is the source for the resource two_line_list_item, which displays two data fields,one above the other, for each list row.

     <?xml version="1.0" encoding="utf-8"?>
     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:orientation="vertical">

         <TextView android:id="@+id/text1"
             android:textSize="16sp"
             android:textStyle="bold"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"/>

         <TextView android:id="@+id/text2"
             android:textSize="16sp"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"/>
     </LinearLayout>

You must identify the data bound to each TextView object in this layout. The syntax for this is discussed in the next section.

Binding to Data

You bind the ExpandableListActivity's ExpandableListView object to data using a class that implements the `ExpandableListAdapter` interface. Android provides two standard list adapters: `SimpleExpandableListAdapter` for static data (Maps), and `SimpleCursorTreeAdapter` for Cursor query results.

See also:

- `setListAdapter(ExpandableListAdapter)`
- `ExpandableListView`

## Summary

### Inherited constants
From class `android.app.Activity`
`int` | `DEFAULT_KEYS_DIALER` Use with `setDefaultKeyMode(int)` to launch the dialer during default key handling.
`int` | `DEFAULT_KEYS_DISABLE` Use with `setDefaultKeyMode(int)` to turn off default handling of keys.
`int` | `DEFAULT_KEYS_SEARCH_GLOBAL` Use with `setDefaultKeyMode(int)` to specify that unhandled keystrokes will start a global search (typically web search, but some platforms may define alternate methods for global search) See `android.app.SearchManager` for more details.
`int` | `DEFAULT_KEYS_SEARCH_LOCAL` Use with `setDefaultKeyMode(int)` to specify that unhandled keystrokes will start an application-defined search.
`int` | `DEFAULT_KEYS_SHORTCUT` Use with `setDefaultKeyMode(int)` to execute a menu shortcut in default key handling.
`int` | `RESULT_CANCELED` Standard activity result: operation canceled.
`int` | `RESULT_FIRST_USER` Start of user-defined activity results.
`int` | `RESULT_OK` Standard activity result: operation succeeded.
From class `android.content.Context`
`String` | `ACCESSIBILITY_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `AccessibilityManager` for giving the user feedback for UI events through the registered event listeners.
`String` | `ACCOUNT_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `AccountManager` for receiving intents at a time of your choosing.
`String` | `ACTIVITY_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `ActivityManager` for interacting with the global system state.
`String` | `ALARM_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `AlarmManager` for receiving intents at a time of your choosing.
`String` | `APPWIDGET_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `AppWidgetManager` for accessing AppWidgets.
`String` | `APP_OPS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `AppOpsManager` for tracking application operations on the device.
`String` | `APP_SEARCH_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve an `AppSearchManager` for indexing and querying app data managed by the system.
`String` | `AUDIO_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `AudioManager` for handling management of volume, ringer modes and audio routing.
`String` | `BATTERY_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `BatteryManager` for managing battery state.
`int` | `BIND_ABOVE_CLIENT` Flag for `bindService(Intent, ServiceConnection, int)`: indicates that the client application binding to this service considers the service to be more important than the app itself.
`int` | `BIND_ADJUST_WITH_ACTIVITY` Flag for `bindService(Intent, ServiceConnection, int)`: If binding from an activity, allow the target service's process importance to be raised based on whether the activity is visible to the user, regardless whether another flag is used to reduce the amount that the client process's overall importance is used to impact it.
`int` | `BIND_ALLOW_OOM_MANAGEMENT` Flag for `bindService(Intent, ServiceConnection, int)`: allow the process hosting the bound service to go through its normal memory management.
`int` | `BIND_AUTO_CREATE` Flag for `bindService(Intent, ServiceConnection, int)`: automatically create the service as long as the binding exists.
`int` | `BIND_DEBUG_UNBIND` Flag for `bindService(Intent, ServiceConnection, int)`: include debugging help for mismatched calls to unbind.
`int` | `BIND_EXTERNAL_SERVICE` Flag for `bindService(Intent, ServiceConnection, int)`: The service being bound is an `isolated`, `external` service.
`int` | `BIND_IMPORTANT` Flag for `bindService(Intent, ServiceConnection, int)`: this service is very important to the client, so should be brought to the foreground process level when the client is.
`int` | `BIND_INCLUDE_CAPABILITIES` Flag for `bindService(Intent, ServiceConnection, int)`: If binding from an app that has specific capabilities due to its foreground state such as an activity or foreground service, then this flag will allow the bound app to get the same capabilities, as long as it has the required permissions as well.
`int` | `BIND_NOT_FOREGROUND` Flag for `bindService(Intent, ServiceConnection, int)`: don't allow this binding to raise the target service's process to the foreground scheduling priority.
`int` | `BIND_NOT_PERCEPTIBLE` Flag for `bindService(Intent, ServiceConnection, int)`: If binding from an app that is visible or user-perceptible, lower the target service's importance to below the perceptible level.
`int` | `BIND_WAIVE_PRIORITY` Flag for `bindService(Intent, ServiceConnection, int)`: don't impact the scheduling or memory management priority of the target service's hosting process.
`String` | `BIOMETRIC_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `BiometricManager` for handling biometric and PIN/pattern/password authentication.
`String` | `BLOB_STORE_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `BlobStoreManager` for contributing and accessing data blobs from the blob store maintained by the system.
`String` | `BLUETOOTH_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `BluetoothManager` for using Bluetooth.
`String` | `BUGREPORT_SERVICE` Service to capture a bugreport.
`String` | `CAMERA_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `CameraManager` for interacting with camera devices.
`String` | `CAPTIONING_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `CaptioningManager` for obtaining captioning properties and listening for changes in captioning preferences.
`String` | `CARRIER_CONFIG_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `CarrierConfigManager` for reading carrier configuration values.
`String` | `CLIPBOARD_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `ClipboardManager` for accessing and modifying the contents of the global clipboard.
`String` | `COMPANION_DEVICE_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `CompanionDeviceManager` for managing companion devices
`String` | `CONNECTIVITY_DIAGNOSTICS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `ConnectivityDiagnosticsManager` for performing network connectivity diagnostics as well as receiving network connectivity information from the system.
`String` | `CONNECTIVITY_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `ConnectivityManager` for handling management of network connections.
`String` | `CONSUMER_IR_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `ConsumerIrManager` for transmitting infrared signals from the device.
`int` | `CONTEXT_IGNORE_SECURITY` Flag for use with `createPackageContext(String, int)`: ignore any security restrictions on the Context being requested, allowing it to always be loaded.
`int` | `CONTEXT_INCLUDE_CODE` Flag for use with `createPackageContext(String, int)`: include the application code with the context.
`int` | `CONTEXT_RESTRICTED` Flag for use with `createPackageContext(String, int)`: a restricted context may disable specific features.
`String` | `CROSS_PROFILE_APPS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `CrossProfileApps` for cross profile operations.
`String` | `DEVICE_POLICY_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `DevicePolicyManager` for working with global device policy management.
`String` | `DISPLAY_HASH_SERVICE` Use with `getSystemService(java.lang.String)` to access `DisplayHashManager` to handle display hashes.
`String` | `DISPLAY_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `DisplayManager` for interacting with display devices.
`String` | `DOMAIN_VERIFICATION_SERVICE` Use with `getSystemService(java.lang.String)` to access `DomainVerificationManager` to retrieve approval and user state for declared web domains.
`String` | `DOWNLOAD_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `DownloadManager` for requesting HTTP downloads.
`String` | `DROPBOX_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `DropBoxManager` instance for recording diagnostic logs.
`String` | `EUICC_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `EuiccManager` to manage the device eUICC (embedded SIM).
`String` | `FILE_INTEGRITY_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve an `FileIntegrityManager`.
`String` | `FINGERPRINT_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `FingerprintManager` for handling management of fingerprints.
`String` | `GAME_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `GameManager`.
`String` | `HARDWARE_PROPERTIES_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `HardwarePropertiesManager` for accessing the hardware properties service.
`String` | `INPUT_METHOD_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `InputMethodManager` for accessing input methods.
`String` | `INPUT_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `InputManager` for interacting with input devices.
`String` | `IPSEC_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `IpSecManager` for encrypting Sockets or Networks with IPSec.
`String` | `JOB_SCHEDULER_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `JobScheduler` instance for managing occasional background tasks.
`String` | `KEYGUARD_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `KeyguardManager` for controlling keyguard.
`String` | `LAUNCHER_APPS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `LauncherApps` for querying and monitoring launchable apps across profiles of a user.
`String` | `LAYOUT_INFLATER_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `LayoutInflater` for inflating layout resources in this context.
`String` | `LOCATION_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `LocationManager` for controlling location updates.
`String` | `MEDIA_COMMUNICATION_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `MediaCommunicationManager` for managing `MediaSession2`.
`String` | `MEDIA_METRICS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `MediaMetricsManager` for interacting with media metrics on the device.
`String` | `MEDIA_PROJECTION_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `MediaProjectionManager` instance for managing media projection sessions.
`String` | `MEDIA_ROUTER_SERVICE` Use with `getSystemService(Class)` to retrieve a `MediaRouter` for controlling and managing routing of media.
`String` | `MEDIA_SESSION_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `MediaSessionManager` for managing media Sessions.
`String` | `MIDI_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `MidiManager` for accessing the MIDI service.
`int` | `MODE_APPEND` File creation mode: for use with `openFileOutput(String, int)`, if the file already exists then write data to the end of the existing file instead of erasing it.
`int` | `MODE_ENABLE_WRITE_AHEAD_LOGGING` Database open flag: when set, the database is opened with write-ahead logging enabled by default.
`int` | `MODE_MULTI_PROCESS` This constant is deprecated. MODE_MULTI_PROCESS does not work reliably in some versions of Android, and furthermore does not provide any mechanism for reconciling concurrent modifications across processes. Applications should not attempt to use it. Instead, they should use an explicit cross-process data management approach such as `ContentProvider`.
`int` | `MODE_NO_LOCALIZED_COLLATORS` Database open flag: when set, the database is opened without support for localized collators.
`int` | `MODE_PRIVATE` File creation mode: the default mode, where the created file can only be accessed by the calling application (or all applications sharing the same user ID).
`int` | `MODE_WORLD_READABLE` This constant is deprecated. Creating world-readable files is very dangerous, and likely to cause security holes in applications. It is strongly discouraged; instead, applications should use more formal mechanism for interactions such as `ContentProvider`, `BroadcastReceiver`, and `Service`. There are no guarantees that this access mode will remain on a file, such as when it goes through a backup and restore.
`int` | `MODE_WORLD_WRITEABLE` This constant is deprecated. Creating world-writable files is very dangerous, and likely to cause security holes in applications. It is strongly discouraged; instead, applications should use more formal mechanism for interactions such as `ContentProvider`, `BroadcastReceiver`, and `Service`. There are no guarantees that this access mode will remain on a file, such as when it goes through a backup and restore.
`String` | `NETWORK_STATS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `NetworkStatsManager` for querying network usage stats.
`String` | `NFC_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `NfcManager` for using NFC.
`String` | `NOTIFICATION_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `NotificationManager` for informing the user of background events.
`String` | `NSD_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `NsdManager` for handling management of network service discovery
`String` | `PEOPLE_SERVICE` Use with `getSystemService(java.lang.String)` to access a `PeopleManager` to interact with your published conversations.
`String` | `PERFORMANCE_HINT_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `PerformanceHintManager` for accessing the performance hinting service.
`String` | `POWER_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `PowerManager` for controlling power management, including "wake locks," which let you keep the device on while you're running long tasks.
`String` | `PRINT_SERVICE` `PrintManager` for printing and managing printers and print tasks.
`int` | `RECEIVER_VISIBLE_TO_INSTANT_APPS` Flag for `registerReceiver(BroadcastReceiver, IntentFilter)`: The receiver can receive broadcasts from Instant Apps.
`String` | `RESTRICTIONS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `RestrictionsManager` for retrieving application restrictions and requesting permissions for restricted operations.
`String` | `ROLE_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `RoleManager` for managing roles.
`String` | `SEARCH_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `SearchManager` for handling searches.
`String` | `SENSOR_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `SensorManager` for accessing sensors.
`String` | `SHORTCUT_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `ShortcutManager` for accessing the launcher shortcut service.
`String` | `STORAGE_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `StorageManager` for accessing system storage functions.
`String` | `STORAGE_STATS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `StorageStatsManager` for accessing system storage statistics.
`String` | `SYSTEM_HEALTH_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `SystemHealthManager` for accessing system health (battery, power, memory, etc) metrics.
`String` | `TELECOM_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `TelecomManager` to manage telecom-related features of the device.
`String` | `TELEPHONY_IMS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve an `ImsManager`.
`String` | `TELEPHONY_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `TelephonyManager` for handling management the telephony features of the device.
`String` | `TELEPHONY_SUBSCRIPTION_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `SubscriptionManager` for handling management the telephony subscriptions of the device.
`String` | `TEXT_CLASSIFICATION_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `TextClassificationManager` for text classification services.
`String` | `TEXT_SERVICES_MANAGER_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `TextServicesManager` for accessing text services.
`String` | `TV_INPUT_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `TvInputManager` for interacting with TV inputs on the device.
`String` | `UI_MODE_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `UiModeManager` for controlling UI modes.
`String` | `USAGE_STATS_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `UsageStatsManager` for querying device usage stats.
`String` | `USB_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `UsbManager` for access to USB devices (as a USB host) and for controlling this device's behavior as a USB device.
`String` | `USER_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `UserManager` for managing users on devices that support multiple users.
`String` | `VIBRATOR_MANAGER_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `VibratorManager` for accessing the device vibrators, interacting with individual ones and playing synchronized effects on multiple vibrators.
`String` | `VIBRATOR_SERVICE` This constant is deprecated. Use `VibratorManager` to retrieve the default system vibrator.
`String` | `VPN_MANAGEMENT_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `VpnManager` to manage profiles for the platform built-in VPN.
`String` | `WALLPAPER_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a com.android.server.WallpaperService for accessing wallpapers.
`String` | `WIFI_AWARE_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `WifiAwareManager` for handling management of Wi-Fi Aware.
`String` | `WIFI_P2P_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `WifiP2pManager` for handling management of Wi-Fi peer-to-peer connections.
`String` | `WIFI_RTT_RANGING_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `WifiRttManager` for ranging devices with wifi.
`String` | `WIFI_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `WifiManager` for handling management of Wi-Fi access.
`String` | `WINDOW_SERVICE` Use with `getSystemService(java.lang.String)` to retrieve a `WindowManager` for accessing the system's window manager.
From interface `android.content.ComponentCallbacks2`
`int` | `TRIM_MEMORY_BACKGROUND` Level for `onTrimMemory(int)`: the process has gone on to the LRU list.
`int` | `TRIM_MEMORY_COMPLETE` Level for `onTrimMemory(int)`: the process is nearing the end of the background LRU list, and if more memory isn't found soon it will be killed.
`int` | `TRIM_MEMORY_MODERATE` Level for `onTrimMemory(int)`: the process is around the middle of the background LRU list; freeing memory can help the system keep other processes running later in the list for better overall performance.
`int` | `TRIM_MEMORY_RUNNING_CRITICAL` Level for `onTrimMemory(int)`: the process is not an expendable background process, but the device is running extremely low on memory and is about to not be able to keep any background processes running.
`int` | `TRIM_MEMORY_RUNNING_LOW` Level for `onTrimMemory(int)`: the process is not an expendable background process, but the device is running low on memory.
`int` | `TRIM_MEMORY_RUNNING_MODERATE` Level for `onTrimMemory(int)`: the process is not an expendable background process, but the device is running moderately low on memory.
`int` | `TRIM_MEMORY_UI_HIDDEN` Level for `onTrimMemory(int)`: the process had been showing a user interface, and is no longer doing so.

### Inherited fields
From class `android.app.Activity`
`protected static final int[]` | `FOCUSED_STATE_SET`

### Public constructors
`ExpandableListActivity()`

### Public methods
`ExpandableListAdapter` | `getExpandableListAdapter()` Get the ExpandableListAdapter associated with this activity's ExpandableListView.
`ExpandableListView` | `getExpandableListView()` Get the activity's expandable list view widget.
`long` | `getSelectedId()` Gets the ID of the currently selected group or child.
`long` | `getSelectedPosition()` Gets the position (in packed position representation) of the currently selected group or child.
`boolean` | `onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id)` Override this for receiving callbacks when a child has been clicked.
`void` | `onContentChanged()` Updates the screen state (current list and other views) when the content changes.
`void` | `onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo)` Override this to populate the context menu when an item is long pressed.
`void` | `onGroupCollapse(int groupPosition)` Override this for receiving callbacks when a group has been collapsed.
`void` | `onGroupExpand(int groupPosition)` Override this for receiving callbacks when a group has been expanded.
`void` | `setListAdapter(ExpandableListAdapter adapter)` Provide the adapter for the expandable list.
`boolean` | `setSelectedChild(int groupPosition, int childPosition, boolean shouldExpandGroup)` Sets the selection to the specified child.
`void` | `setSelectedGroup(int groupPosition)` Sets the selection to the specified group.

### Protected methods
`void` | `onRestoreInstanceState(Bundle state)` Ensures the expandable list view has been created before Activity restores all of the view states.

### Inherited methods
From class `android.app.Activity`
`void` | `addContentView(View view, ViewGroup.LayoutParams params)` Add an additional content view to the activity.
`void` | `attachBaseContext(Context newBase)` Set the base context for this ContextWrapper.
`void` | `closeContextMenu()` Programmatically closes the most recently opened context menu, if showing.
`void` | `closeOptionsMenu()` Progammatically closes the options menu.
`PendingIntent` | `createPendingResult(int requestCode, Intent data, int flags)` Create a new PendingIntent object which you can hand to others for them to use to send result data back to your `onActivityResult(int, int, Intent)` callback.
`final void` | `dismissDialog(int id)` This method is deprecated. Use the new `DialogFragment` class with `FragmentManager` instead; this is also available on older platforms through the Android compatibility package.
`final void` | `dismissKeyboardShortcutsHelper()` Dismiss the Keyboard Shortcuts screen.
`boolean` | `dispatchGenericMotionEvent(MotionEvent ev)` Called to process generic motion events.
`boolean` | `dispatchKeyEvent(KeyEvent event)` Called to process key events.
`boolean` | `dispatchKeyShortcutEvent(KeyEvent event)` Called to process a key shortcut event.
`boolean` | `dispatchPopulateAccessibilityEvent(AccessibilityEvent event)` Called to process population of `AccessibilityEvent`s.
`boolean` | `dispatchTouchEvent(MotionEvent ev)` Called to process touch screen events.
`boolean` | `dispatchTrackballEvent(MotionEvent ev)` Called to process trackball events.
`void` | `dump(String prefix, FileDescriptor fd, PrintWriter writer, String[] args)` Print the Activity's state into the given stream.
`boolean` | `enterPictureInPictureMode(PictureInPictureParams params)` Puts the activity in picture-in-picture mode if possible in the current system state.
`void` | `enterPictureInPictureMode()` Puts the activity in picture-in-picture mode if possible in the current system state.
`<T extends View> T` | `findViewById(int id)` Finds a view that was identified by the `android:id` XML attribute that was processed in `onCreate(Bundle)`.
`void` | `finish()` Call this when your activity is done and should be closed.
`void` | `finishActivity(int requestCode)` Force finish another activity that you had previously started with `startActivityForResult(Intent, int)`.
`void` | `finishActivityFromChild(Activity child, int requestCode)` This method is deprecated. Use `finishActivity(int)` instead.
`void` | `finishAffinity()` Finish this activity as well as all activities immediately below it in the current task that have the same affinity.
`void` | `finishAfterTransition()` Reverses the Activity Scene entry Transition and triggers the calling Activity to reverse its exit Transition.
`void` | `finishAndRemoveTask()` Call this when your activity is done and should be closed and the task should be completely removed as a part of finishing the root activity of the task.
`void` | `finishFromChild(Activity child)` This method is deprecated. Use `finish()` instead.
`ActionBar` | `getActionBar()` Retrieve a reference to this activity's ActionBar.
`final Application` | `getApplication()` Return the application that owns this activity.
`ComponentName` | `getCallingActivity()` Return the name of the activity that invoked this activity.
`String` | `getCallingPackage()` Return the name of the package that invoked this activity.
`int` | `getChangingConfigurations()` If this activity is being destroyed because it can not handle a configuration parameter being changed (and thus its `onConfigurationChanged(android.content.res.Configuration)` method is not being called), then you can use this method to discover the set of changes that have occurred while in the process of being destroyed.
`ComponentName` | `getComponentName()` Returns the complete component name of this activity.
`Scene` | `getContentScene()` Retrieve the `Scene` representing this window's current content.
`TransitionManager` | `getContentTransitionManager()` Retrieve the `TransitionManager` responsible for default transitions in this window.
`View` | `getCurrentFocus()` Calls `Window.getCurrentFocus()` on the Window of this Activity to return the currently focused view.
`FragmentManager` | `getFragmentManager()` This method is deprecated. Use `FragmentActivity.getSupportFragmentManager()`
`Intent` | `getIntent()` Return the intent that started this activity.
`Object` | `getLastNonConfigurationInstance()` Retrieve the non-configuration instance data that was previously returned by `onRetainNonConfigurationInstance()`.
`LayoutInflater` | `getLayoutInflater()` Convenience for calling `Window.getLayoutInflater()`.
`LoaderManager` | `getLoaderManager()` This method is deprecated. Use `FragmentActivity.getSupportLoaderManager()`
`String` | `getLocalClassName()` Returns class name for this activity with the package prefix removed.
`int` | `getMaxNumPictureInPictureActions()` Return the number of actions that will be displayed in the picture-in-picture UI when the user interacts with the activity currently in picture-in-picture mode.
`final MediaController` | `getMediaController()` Gets the controller which should be receiving media key and volume events while this activity is in the foreground.
`MenuInflater` | `getMenuInflater()` Returns a `MenuInflater` with this context.
`final Activity` | `getParent()` Return the parent activity if this view is an embedded child.
`Intent` | `getParentActivityIntent()` Obtain an `Intent` that will launch an explicit target activity specified by this activity's logical parent.
`SharedPreferences` | `getPreferences(int mode)` Retrieve a `SharedPreferences` object for accessing preferences that are private to this activity.
`Uri` | `getReferrer()` Return information about who launched this activity.
`int` | `getRequestedOrientation()` Return the current requested orientation of the activity.
`final SearchEvent` | `getSearchEvent()` During the onSearchRequested() callbacks, this function will return the `SearchEvent` that triggered the callback, if it exists.
`final SplashScreen` | `getSplashScreen()` Get the interface that activity use to talk to the splash screen.
`Object` | `getSystemService(String name)` Return the handle to a system-level service by name.
`int` | `getTaskId()` Return the identifier of the task this activity is in.
`final CharSequence` | `getTitle()`
`final int` | `getTitleColor()`
`VoiceInteractor` | `getVoiceInteractor()` Retrieve the active `VoiceInteractor` that the user is going through to interact with this activity.
`final int` | `getVolumeControlStream()` Gets the suggested audio stream whose volume should be changed by the hardware volume controls.
`Window` | `getWindow()` Retrieve the current `Window` for the activity.
`WindowManager` | `getWindowManager()` Retrieve the window manager for showing custom windows.
`boolean` | `hasWindowFocus()` Returns true if this activity's main window currently has window focus.
`void` | `invalidateOptionsMenu()` Declare that the options menu has changed, so should be recreated.
`boolean` | `isActivityTransitionRunning()` Returns whether there are any activity transitions currently running on this activity.
`boolean` | `isChangingConfigurations()` Check to see whether this activity is in the process of being destroyed in order to be recreated with a new configuration.
`final boolean` | `isChild()` Is this activity embedded inside of another activity?
`boolean` | `isDestroyed()` Returns true if the final `onDestroy()` call has been made on the Activity, so this instance is now dead.
`boolean` | `isFinishing()` Check to see whether this activity is in the process of finishing, either because you called `finish()` on it or someone else has requested that it finished.
`boolean` | `isImmersive()` Bit indicating that this activity is "immersive" and should not be interrupted by notifications if possible.
`boolean` | `isInMultiWindowMode()` Returns true if the activity is currently in multi-window mode.
`boolean` | `isInPictureInPictureMode()` Returns true if the activity is currently in picture-in-picture mode.
`boolean` | `isLaunchedFromBubble()` Indicates whether this activity is launched from a bubble.
`boolean` | `isLocalVoiceInteractionSupported()` Queries whether the currently enabled voice interaction service supports returning a voice interactor for use by the activity.
`boolean` | `isTaskRoot()` Return whether this activity is the root of a task.
`boolean` | `isVoiceInteraction()` Check whether this activity is running as part of a voice interaction with the user.
`boolean` | `isVoiceInteractionRoot()` Like `isVoiceInteraction()`, but only returns `true` if this is also the root of a voice interaction.
`final Cursor` | `managedQuery(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder)` This method is deprecated. Use `CursorLoader` instead.
`boolean` | `moveTaskToBack(boolean nonRoot)` Move the task containing this activity to the back of the activity stack.
`boolean` | `navigateUpTo(Intent upIntent)` Navigate from this activity to the activity specified by upIntent, finishing this activity in the process.
`boolean` | `navigateUpToFromChild(Activity child, Intent upIntent)` This method is deprecated. Use `navigateUpTo(android.content.Intent)` instead.
`void` | `onActionModeFinished(ActionMode mode)` Notifies the activity that an action mode has finished.
`void` | `onActionModeStarted(ActionMode mode)` Notifies the Activity that an action mode has been started.
`void` | `onActivityReenter(int resultCode, Intent data)` Called when an activity you launched with an activity transition exposes this Activity through a returning activity transition, giving you the resultCode and any additional data from it.
`void` | `onActivityResult(int requestCode, int resultCode, Intent data)` Called when an activity you launched exits, giving you the requestCode you started it with, the resultCode it returned, and any additional data from it.
`void` | `onApplyThemeResource(Resources.Theme theme, int resid, boolean first)` Called by `setTheme(Resources.Theme)` and `getTheme()` to apply a theme resource to the current Theme object.
`void` | `onAttachFragment(Fragment fragment)` This method is deprecated. Use `FragmentActivity.onAttachFragment(androidx.fragment.app.Fragment)`
`void` | `onAttachedToWindow()` Called when the main window associated with the activity has been attached to the window manager.
`void` | `onBackPressed()` Called when the activity has detected the user's press of the back key.
`void` | `onChildTitleChanged(Activity childActivity, CharSequence title)`
`void` | `onConfigurationChanged(Configuration newConfig)` Called by the system when the device configuration changes while your activity is running.
`void` | `onContentChanged()` This hook is called whenever the content view of the screen changes (due to a call to `Window.setContentView` or `Window.addContentView`).
`boolean` | `onContextItemSelected(MenuItem item)` This hook is called whenever an item in a context menu is selected.
`void` | `onContextMenuClosed(Menu menu)` This hook is called whenever the context menu is being closed (either by the user canceling the menu with the back/menu button, or when an item is selected).
`void` | `onCreate(Bundle savedInstanceState, PersistableBundle persistentState)` Same as `onCreate(android.os.Bundle)` but called for those activities created with the attribute `R.attr.persistableMode` set to `persistAcrossReboots`.
`void` | `onCreate(Bundle savedInstanceState)` Called when the activity is starting.
`void` | `onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo)` Called when a context menu for the `view` is about to be shown.
`CharSequence` | `onCreateDescription()` Generate a new description for this activity.
`Dialog` | `onCreateDialog(int id)` This method is deprecated. Old no-arguments version of `onCreateDialog(int, android.os.Bundle)`.
`Dialog` | `onCreateDialog(int id, Bundle args)` This method is deprecated. Use the new `DialogFragment` class with `FragmentManager` instead; this is also available on older platforms through the Android compatibility package.
`void` | `onCreateNavigateUpTaskStack(TaskStackBuilder builder)` Define the synthetic task stack that will be generated during Up navigation from a different task.
`boolean` | `onCreateOptionsMenu(Menu menu)` Initialize the contents of the Activity's standard options menu.
`boolean` | `onCreatePanelMenu(int featureId, Menu menu)` Default implementation of `Window.Callback.onCreatePanelMenu(int, Menu)` for activities.
`View` | `onCreatePanelView(int featureId)` Default implementation of `Window.Callback.onCreatePanelView(int)` for activities.
`boolean` | `onCreateThumbnail(Bitmap outBitmap, Canvas canvas)` This method is deprecated. Method doesn't do anything and will be removed in the future.
`View` | `onCreateView(View parent, String name, Context context, AttributeSet attrs)` Standard implementation of `LayoutInflater.Factory2.onCreateView(View, String, Context, AttributeSet)` used when inflating with the LayoutInflater returned by `Context.getSystemService(Class)`.
`View` | `onCreateView(String name, Context context, AttributeSet attrs)` Standard implementation of `LayoutInflater.Factory.onCreateView(String, Context, AttributeSet)` used when inflating with the LayoutInflater returned by `Context.getSystemService(Class)`.
`void` | `onDestroy()` Perform any final cleanup before an activity is destroyed.
`void` | `onDetachedFromWindow()` Called when the main window associated with the activity has been detached from the window manager.
`void` | `onEnterAnimationComplete()` Activities cannot draw during the period that their windows are animating in.
`boolean` | `onGenericMotionEvent(MotionEvent event)` Called when a generic motion event was not handled by any of the views inside of the activity.
`void` | `onGetDirectActions(CancellationSignal cancellationSignal, Consumer<List<DirectAction>> callback)` Returns the list of direct actions supported by the app.
`boolean` | `onKeyDown(int keyCode, KeyEvent event)` Called when a key was pressed down and not handled by any of the views inside of the activity.
`boolean` | `onKeyLongPress(int keyCode, KeyEvent event)` Default implementation of `KeyEvent.Callback.onKeyLongPress()`: always returns false (doesn't handle the event).
`boolean` | `onKeyMultiple(int keyCode, int repeatCount, KeyEvent event)` Default implementation of `KeyEvent.Callback.onKeyMultiple()`: always returns false (doesn't handle the event).
`boolean` | `onKeyShortcut(int keyCode, KeyEvent event)` Called when a key shortcut event is not handled by any of the views in the Activity.
`boolean` | `onKeyUp(int keyCode, KeyEvent event)` Called when a key was released and not handled by any of the views inside of the activity.
`void` | `onLocalVoiceInteractionStarted()` Callback to indicate that `startLocalVoiceInteraction(android.os.Bundle)` has resulted in a voice interaction session being started.
`void` | `onLocalVoiceInteractionStopped()` Callback to indicate that the local voice interaction has stopped either because it was requested through a call to `stopLocalVoiceInteraction()` or because it was canceled by the user.
`void` | `onLowMemory()` This is called when the overall system is running low on memory, and actively running processes should trim their memory usage.
`boolean` | `onMenuItemSelected(int featureId, MenuItem item)` Default implementation of `Window.Callback.onMenuItemSelected(int, MenuItem)` for activities.
`boolean` | `onMenuOpened(int featureId, Menu menu)` Called when a panel's menu is opened by the user.
`void` | `onMultiWindowModeChanged(boolean isInMultiWindowMode)` This method is deprecated. Use `onMultiWindowModeChanged(boolean, android.content.res.Configuration)` instead.
`void` | `onMultiWindowModeChanged(boolean isInMultiWindowMode, Configuration newConfig)` Called by the system when the activity changes from fullscreen mode to multi-window mode and visa-versa.
`boolean` | `onNavigateUp()` This method is called whenever the user chooses to navigate Up within your application's activity hierarchy from the action bar.
`boolean` | `onNavigateUpFromChild(Activity child)` This method is deprecated. Use `onNavigateUp()` instead.
`void` | `onNewIntent(Intent intent)` This is called for activities that set launchMode to "singleTop" in their package, or if a client used the `Intent#FLAG_ACTIVITY_SINGLE_TOP` flag when calling `startActivity(Intent)`.
`boolean` | `onOptionsItemSelected(MenuItem item)` This hook is called whenever an item in your options menu is selected.
`void` | `onOptionsMenuClosed(Menu menu)` This hook is called whenever the options menu is being closed (either by the user canceling the menu with the back/menu button, or when an item is selected).
`void` | `onPanelClosed(int featureId, Menu menu)` Default implementation of `Window.Callback.onPanelClosed(int, Menu)` for activities.
`void` | `onPause()` Called as part of the activity lifecycle when the user no longer actively interacts with the activity, but it is still visible on screen.
`void` | `onPerformDirectAction(String actionId, Bundle arguments, CancellationSignal cancellationSignal, Consumer<Bundle> resultListener)` This is called to perform an action previously defined by the app.
`void` | `onPictureInPictureModeChanged(boolean isInPictureInPictureMode, Configuration newConfig)` Called by the system when the activity changes to and from picture-in-picture mode.
`void` | `onPictureInPictureModeChanged(boolean isInPictureInPictureMode)` This method is deprecated. Use `onPictureInPictureModeChanged(boolean, android.content.res.Configuration)` instead.
`boolean` | `onPictureInPictureRequested()` This method is called by the system in various cases where picture in picture mode should be entered if supported.
`void` | `onPictureInPictureUiStateChanged(PictureInPictureUiState pipState)` Called by the system when the activity is in PiP and has state changes.
`void` | `onPostCreate(Bundle savedInstanceState)` Called when activity start-up is complete (after `onStart()` and `onRestoreInstanceState(Bundle)` have been called).
`void` | `onPostCreate(Bundle savedInstanceState, PersistableBundle persistentState)` This is the same as `onPostCreate(android.os.Bundle)` but is called for activities created with the attribute `R.attr.persistableMode` set to `persistAcrossReboots`.
`void` | `onPostResume()` Called when activity resume is complete (after `onResume()` has been called).
`void` | `onPrepareDialog(int id, Dialog dialog, Bundle args)` This method is deprecated. Use the new `DialogFragment` class with `FragmentManager` instead; this is also available on older platforms through the Android compatibility package.
`void` | `onPrepareDialog(int id, Dialog dialog)` This method is deprecated. Old no-arguments version of `onPrepareDialog(int, android.app.Dialog, android.os.Bundle)`.
`void` | `onPrepareNavigateUpTaskStack(TaskStackBuilder builder)` Prepare the synthetic task stack that will be generated during Up navigation from a different task.
`boolean` | `onPrepareOptionsMenu(Menu menu)` Prepare the Screen's standard options menu to be displayed.
`boolean` | `onPreparePanel(int featureId, View view, Menu menu)` Default implementation of `Window.Callback.onPreparePanel(int, View, Menu)` for activities.
`void` | `onProvideAssistContent(AssistContent outContent)` This is called when the user is requesting an assist, to provide references to content related to the current activity.
`void` | `onProvideAssistData(Bundle data)` This is called when the user is requesting an assist, to build a full `Intent#ACTION_ASSIST` Intent with all of the context of the current application.
`void` | `onProvideKeyboardShortcuts(List<KeyboardShortcutGroup> data, Menu menu, int deviceId)` Called when Keyboard Shortcuts are requested for the current window.
`Uri` | `onProvideReferrer()` Override to generate the desired referrer for the content currently being shown by the app.
`void` | `onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)` Callback for the result from requesting permissions.
`void` | `onRestart()` Called after `onStop()` when the current activity is being re-displayed to the user (the user has navigated back to it).
`void` | `onRestoreInstanceState(Bundle savedInstanceState)` This method is called after `onStart()` when the activity is being re-initialized from a previously saved state, given here in savedInstanceState.
`void` | `onRestoreInstanceState(Bundle savedInstanceState, PersistableBundle persistentState)` This is the same as `onRestoreInstanceState(android.os.Bundle)` but is called for activities created with the attribute `R.attr.persistableMode` set to `persistAcrossReboots`.
`void` | `onResume()` Called after `onRestoreInstanceState(Bundle)`, `onRestart()`, or `onPause()`.
`Object` | `onRetainNonConfigurationInstance()` Called by the system, as part of destroying an activity due to a configuration change, when it is known that a new instance will immediately be created for the new configuration.
`void` | `onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState)` This is the same as `onSaveInstanceState(Bundle)` but is called for activities created with the attribute `R.attr.persistableMode` set to `persistAcrossReboots`.
`void` | `onSaveInstanceState(Bundle outState)` Called to retrieve per-instance state from an activity before being killed so that the state can be restored in `onCreate(Bundle)` or `onRestoreInstanceState(Bundle)` (the `Bundle` populated by this method will be passed to both).
`boolean` | `onSearchRequested(SearchEvent searchEvent)` This hook is called when the user signals the desire to start a search.
`boolean` | `onSearchRequested()` Called when the user signals the desire to start a search.
`void` | `onStart()` Called after `onCreate(Bundle)` — or after `onRestart()` when the activity had been stopped, but is now again being displayed to the user.
`void` | `onStateNotSaved()` This method is deprecated. starting with `Build.VERSION_CODES.P` onSaveInstanceState is called after `onStop()`, so this hint isn't accurate anymore: you should consider your state not saved in between `onStart` and `onStop` callbacks inclusively.
`void` | `onStop()` Called when you are no longer visible to the user.
`void` | `onTitleChanged(CharSequence title, int color)`
`void` | `onTopResumedActivityChanged(boolean isTopResumedActivity)` Called when activity gets or loses the top resumed position in the system.
`boolean` | `onTouchEvent(MotionEvent event)` Called when a touch screen event was not handled by any of the views under it.
`boolean` | `onTrackballEvent(MotionEvent event)` Called when the trackball was moved and not handled by any of the views inside of the activity.
`void` | `onTrimMemory(int level)` Called when the operating system has determined that it is a good time for a process to trim unneeded memory from its process.
`void` | `onUserInteraction()` Called whenever a key, touch, or trackball event is dispatched to the activity.
`void` | `onUserLeaveHint()` Called as part of the activity lifecycle when an activity is about to go into the background as the result of user choice.
`void` | `onVisibleBehindCanceled()` This method is deprecated. This method's functionality is no longer supported as of `Build.VERSION_CODES.O` and will be removed in a future release.
`void` | `onWindowAttributesChanged(WindowManager.LayoutParams params)` This is called whenever the current window attributes change.
`void` | `onWindowFocusChanged(boolean hasFocus)` Called when the current `Window` of the activity gains or loses focus.
`ActionMode` | `onWindowStartingActionMode(ActionMode.Callback callback, int type)` Called when an action mode is being started for this window.
`ActionMode` | `onWindowStartingActionMode(ActionMode.Callback callback)` Give the Activity a chance to control the UI for an action mode requested by the system.
`void` | `openContextMenu(View view)` Programmatically opens the context menu for a particular `view`.
`void` | `openOptionsMenu()` Programmatically opens the options menu.
`void` | `overridePendingTransition(int enterAnim, int exitAnim)` Call immediately after one of the flavors of `startActivity(android.content.Intent)` or `finish()` to specify an explicit transition animation to perform next.
`void` | `postponeEnterTransition()` Postpone the entering activity transition when Activity was started with `ActivityOptions.makeSceneTransitionAnimation(Activity, android.util.Pair[])`.
`void` | `recreate()` Cause this Activity to be recreated with a new instance.
`void` | `registerActivityLifecycleCallbacks(Application.ActivityLifecycleCallbacks callback)` Register an `Application.ActivityLifecycleCallbacks` instance that receives lifecycle callbacks for only this Activity.
`void` | `registerForContextMenu(View view)` Registers a context menu to be shown for the given view (multiple views can show the context menu).
`boolean` | `releaseInstance()` Ask that the local app instance of this activity be released to free up its memory.
`final void` | `removeDialog(int id)` This method is deprecated. Use the new `DialogFragment` class with `FragmentManager` instead; this is also available on older platforms through the Android compatibility package.
`void` | `reportFullyDrawn()` Report to the system that your app is now fully drawn, for diagnostic and optimization purposes.
`DragAndDropPermissions` | `requestDragAndDropPermissions(DragEvent event)` Create `DragAndDropPermissions` object bound to this activity and controlling the access permissions for content URIs associated with the `DragEvent`.
`final void` | `requestPermissions(String[] permissions, int requestCode)` Requests permissions to be granted to this application.
`final void` | `requestShowKeyboardShortcuts()` Request the Keyboard Shortcuts screen to show up.
`boolean` | `requestVisibleBehind(boolean visible)` This method is deprecated. This method's functionality is no longer supported as of `Build.VERSION_CODES.O` and will be removed in a future release.
`final boolean` | `requestWindowFeature(int featureId)` Enable extended window features.
`final <T extends View> T` | `requireViewById(int id)` Finds a view that was identified by the `android:id` XML attribute that was processed in `onCreate(Bundle)`, or throws an IllegalArgumentException if the ID is invalid, or there is no matching view in the hierarchy.
`final void` | `runOnUiThread(Runnable action)` Runs the specified action on the UI thread.
`void` | `setActionBar(Toolbar toolbar)` Set a `Toolbar` to act as the `ActionBar` for this Activity window.
`void` | `setContentTransitionManager(TransitionManager tm)` Set the `TransitionManager` to use for default transitions in this window.
`void` | `setContentView(View view, ViewGroup.LayoutParams params)` Set the activity content to an explicit view.
`void` | `setContentView(View view)` Set the activity content to an explicit view.
`void` | `setContentView(int layoutResID)` Set the activity content from a layout resource.
`final void` | `setDefaultKeyMode(int mode)` Select the default key handling for this activity.
`void` | `setEnterSharedElementCallback(SharedElementCallback callback)` When `ActivityOptions.makeSceneTransitionAnimation(Activity, android.view.View, String)` was used to start an Activity, callback will be called to handle shared elements on the launched Activity.
`void` | `setExitSharedElementCallback(SharedElementCallback callback)` When `ActivityOptions.makeSceneTransitionAnimation(Activity, android.view.View, String)` was used to start an Activity, callback will be called to handle shared elements on the launching Activity.
`final void` | `setFeatureDrawable(int featureId, Drawable drawable)` Convenience for calling `Window.setFeatureDrawable(int, Drawable)`.
`final void` | `setFeatureDrawableAlpha(int featureId, int alpha)` Convenience for calling `Window.setFeatureDrawableAlpha(int, int)`.
`final void` | `setFeatureDrawableResource(int featureId, int resId)` Convenience for calling `Window.setFeatureDrawableResource(int, int)`.
`final void` | `setFeatureDrawableUri(int featureId, Uri uri)` Convenience for calling `Window.setFeatureDrawableUri(int, Uri)`.
`void` | `setFinishOnTouchOutside(boolean finish)` Sets whether this activity is finished when touched outside its window's bounds.
`void` | `setImmersive(boolean i)` Adjust the current immersive mode setting.
`void` | `setInheritShowWhenLocked(boolean inheritShowWhenLocked)` Specifies whether this `Activity` should be shown on top of the lock screen whenever the lockscreen is up and this activity has another activity behind it with the showWhenLock attribute set.
`void` | `setIntent(Intent newIntent)` Change the intent returned by `getIntent()`.
`void` | `setLocusContext(LocusId locusId, Bundle bundle)` Sets the `LocusId` for this activity.
`final void` | `setMediaController(MediaController controller)` Sets a `MediaController` to send media keys and volume changes to.
`void` | `setPictureInPictureParams(PictureInPictureParams params)` Updates the properties of the picture-in-picture activity, or sets it to be used later when `enterPictureInPictureMode()` is called.
`final void` | `setProgress(int progress)` This method is deprecated. No longer supported starting in API 21.
`final void` | `setProgressBarIndeterminate(boolean indeterminate)` This method is deprecated. No longer supported starting in API 21.
`final void` | `setProgressBarIndeterminateVisibility(boolean visible)` This method is deprecated. No longer supported starting in API 21.
`final void` | `setProgressBarVisibility(boolean visible)` This method is deprecated. No longer supported starting in API 21.
`void` | `setRequestedOrientation(int requestedOrientation)` Change the desired orientation of this activity.
`final void` | `setResult(int resultCode, Intent data)` Call this to set the result that your activity will return to its caller.
`final void` | `setResult(int resultCode)` Call this to set the result that your activity will return to its caller.
`final void` | `setSecondaryProgress(int secondaryProgress)` This method is deprecated. No longer supported starting in API 21.
`void` | `setShowWhenLocked(boolean showWhenLocked)` Specifies whether an `Activity` should be shown on top of the lock screen whenever the lockscreen is up and the activity is resumed.
`void` | `setTaskDescription(ActivityManager.TaskDescription taskDescription)` Sets information describing the task with this activity for presentation inside the Recents System UI.
`void` | `setTheme(int resid)` Set the base theme for this context.
`void` | `setTitle(CharSequence title)` Change the title associated with this activity.
`void` | `setTitle(int titleId)` Change the title associated with this activity.
`void` | `setTitleColor(int textColor)` This method is deprecated. Use action bar styles instead.
`boolean` | `setTranslucent(boolean translucent)` Convert an activity, which particularly with `R.attr.windowIsTranslucent` or `R.attr.windowIsFloating` attribute, to a fullscreen opaque activity, or convert it from opaque back to translucent.
`void` | `setTurnScreenOn(boolean turnScreenOn)` Specifies whether the screen should be turned on when the `Activity` is resumed.
`void` | `setVisible(boolean visible)` Control whether this activity's main window is visible.
`final void` | `setVolumeControlStream(int streamType)` Suggests an audio stream whose volume should be changed by the hardware volume controls.
`void` | `setVrModeEnabled(boolean enabled, ComponentName requestedComponent)` Enable or disable virtual reality (VR) mode for this Activity.
`boolean` | `shouldShowRequestPermissionRationale(String permission)` Gets whether you should show UI with rationale before requesting a permission.
`boolean` | `shouldUpRecreateTask(Intent targetIntent)` Returns true if the app should recreate the task when navigating 'up' from this activity by using targetIntent.
`boolean` | `showAssist(Bundle args)` Ask to have the current assistant shown to the user.
`final boolean` | `showDialog(int id, Bundle args)` This method is deprecated. Use the new `DialogFragment` class with `FragmentManager` instead; this is also available on older platforms through the Android compatibility package.
`final void` | `showDialog(int id)` This method is deprecated. Use the new `DialogFragment` class with `FragmentManager` instead; this is also available on older platforms through the Android compatibility package.
`void` | `showLockTaskEscapeMessage()` Shows the user the system defined message for telling the user how to exit lock task mode.
`ActionMode` | `startActionMode(ActionMode.Callback callback, int type)` Start an action mode of the given type.
`ActionMode` | `startActionMode(ActionMode.Callback callback)` Start an action mode of the default type `ActionMode#TYPE_PRIMARY`.
`void` | `startActivities(Intent[] intents, Bundle options)` Launch a new activity.
`void` | `startActivities(Intent[] intents)` Same as `startActivities(android.content.Intent[], android.os.Bundle)` with no options specified.
`void` | `startActivity(Intent intent)` Same as `startActivity(android.content.Intent, android.os.Bundle)` with no options specified.
`void` | `startActivity(Intent intent, Bundle options)` Launch a new activity.
`void` | `startActivityForResult(Intent intent, int requestCode)` Same as calling `startActivityForResult(android.content.Intent, int, android.os.Bundle)` with no options.
`void` | `startActivityForResult(Intent intent, int requestCode, Bundle options)` Launch an activity for which you would like a result when it finished.
`void` | `startActivityFromChild(Activity child, Intent intent, int requestCode)` This method is deprecated. Use `androidx.fragment.app.FragmentActivity#startActivityFromFragment( androidx.fragment.app.Fragment,Intent,int)`
`void` | `startActivityFromChild(Activity child, Intent intent, int requestCode, Bundle options)` This method is deprecated. Use `androidx.fragment.app.FragmentActivity#startActivityFromFragment( androidx.fragment.app.Fragment,Intent,int,Bundle)`
`void` | `startActivityFromFragment(Fragment fragment, Intent intent, int requestCode, Bundle options)` This method is deprecated. Use `androidx.fragment.app.FragmentActivity#startActivityFromFragment( androidx.fragment.app.Fragment,Intent,int,Bundle)`
`void` | `startActivityFromFragment(Fragment fragment, Intent intent, int requestCode)` This method is deprecated. Use `androidx.fragment.app.FragmentActivity#startActivityFromFragment( androidx.fragment.app.Fragment,Intent,int)`
`boolean` | `startActivityIfNeeded(Intent intent, int requestCode, Bundle options)` A special variation to launch an activity only if a new activity instance is needed to handle the given Intent.
`boolean` | `startActivityIfNeeded(Intent intent, int requestCode)` Same as calling `startActivityIfNeeded(android.content.Intent, int, android.os.Bundle)` with no options.
`void` | `startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)` Same as calling `startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int, android.os.Bundle)` with no options.
`void` | `startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)` Like `startActivity(android.content.Intent, android.os.Bundle)`, but taking a IntentSender to start; see `startIntentSenderForResult(android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle)` for more information.
`void` | `startIntentSenderForResult(IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)` Same as calling `startIntentSenderForResult(android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle)` with no options.
`void` | `startIntentSenderForResult(IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)` Like `startActivityForResult(android.content.Intent, int)`, but allowing you to use a IntentSender to describe the activity to be started.
`void` | `startIntentSenderFromChild(Activity child, IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)` This method is deprecated. Use `startIntentSenderForResult(android.content.IntentSender, int, android.content.Intent, int, int, int, android.os.Bundle)` instead.
`void` | `startIntentSenderFromChild(Activity child, IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)` This method is deprecated. Use `startIntentSenderForResult(android.content.IntentSender, int, android.content.Intent, int, int, int)` instead.
`void` | `startLocalVoiceInteraction(Bundle privateOptions)` Starts a local voice interaction session.
`void` | `startLockTask()` Request to put this activity in a mode where the user is locked to a restricted set of applications.
`void` | `startManagingCursor(Cursor c)` This method is deprecated. Use the new `CursorLoader` class with `LoaderManager` instead; this is also available on older platforms through the Android compatibility package.
`boolean` | `startNextMatchingActivity(Intent intent, Bundle options)` Special version of starting an activity, for use when you are replacing other activity components.
`boolean` | `startNextMatchingActivity(Intent intent)` Same as calling `startNextMatchingActivity(android.content.Intent, android.os.Bundle)` with no options.
`void` | `startPostponedEnterTransition()` Begin postponed transitions after `postponeEnterTransition()` was called.
`void` | `startSearch(String initialQuery, boolean selectInitialQuery, Bundle appSearchData, boolean globalSearch)` This hook is called to launch the search UI.
`void` | `stopLocalVoiceInteraction()` Request to terminate the current voice interaction that was previously started using `startLocalVoiceInteraction(android.os.Bundle)`.
`void` | `stopLockTask()` Stop the current task from being locked.
`void` | `stopManagingCursor(Cursor c)` This method is deprecated. Use the new `CursorLoader` class with `LoaderManager` instead; this is also available on older platforms through the Android compatibility package.
`void` | `takeKeyEvents(boolean get)` Request that key events come to this activity.
`void` | `triggerSearch(String query, Bundle appSearchData)` Similar to `startSearch(String, boolean, Bundle, boolean)`, but actually fires off the search query after invoking the search dialog.
`void` | `unregisterActivityLifecycleCallbacks(Application.ActivityLifecycleCallbacks callback)` Unregister an `Application.ActivityLifecycleCallbacks` previously registered with `registerActivityLifecycleCallbacks(Application.ActivityLifecycleCallbacks)`.
`void` | `unregisterForContextMenu(View view)` Prevents a context menu to be shown for the given view.
From class `android.view.ContextThemeWrapper`
`void` | `applyOverrideConfiguration(Configuration overrideConfiguration)` Call to set an "override configuration" on this context -- this is a configuration that replies one or more values of the standard configuration that is applied to the context.
`void` | `attachBaseContext(Context newBase)` Set the base context for this ContextWrapper.
`AssetManager` | `getAssets()` Returns an AssetManager instance for the application's package.
`Resources` | `getResources()` Returns a Resources instance for the application's package.
`Object` | `getSystemService(String name)` Return the handle to a system-level service by name.
`Resources.Theme` | `getTheme()` Return the Theme object associated with this Context.
`void` | `onApplyThemeResource(Resources.Theme theme, int resId, boolean first)` Called by `setTheme(Resources.Theme)` and `getTheme()` to apply a theme resource to the current Theme object.
`void` | `setTheme(Resources.Theme theme)` Set the configure the current theme.
`void` | `setTheme(int resid)` Set the base theme for this context.
From class `android.content.ContextWrapper`
`void` | `attachBaseContext(Context base)` Set the base context for this ContextWrapper.
`boolean` | `bindIsolatedService(Intent service, int flags, String instanceName, Executor executor, ServiceConnection conn)` Variation of `bindService(Intent, ServiceConnection, int)` that, in the specific case of isolated services, allows the caller to generate multiple instances of a service from a single component declaration.
`boolean` | `bindService(Intent service, int flags, Executor executor, ServiceConnection conn)` Same as `bindService(android.content.Intent, android.content.ServiceConnection, int)` with executor to control ServiceConnection callbacks.
`boolean` | `bindService(Intent service, ServiceConnection conn, int flags)` Connect to an application service, creating it if needed.
`int` | `checkCallingOrSelfPermission(String permission)` Determine whether the calling process of an IPC or you have been granted a particular permission.
`int` | `checkCallingOrSelfUriPermission(Uri uri, int modeFlags)` Determine whether the calling process of an IPC or you has been granted permission to access a specific URI.
`int[]` | `checkCallingOrSelfUriPermissions(List<Uri> uris, int modeFlags)` Determine whether the calling process of an IPC or you has been granted permission to access a list of URIs.
`int` | `checkCallingPermission(String permission)` Determine whether the calling process of an IPC you are handling has been granted a particular permission.
`int` | `checkCallingUriPermission(Uri uri, int modeFlags)` Determine whether the calling process and user ID has been granted permission to access a specific URI.
`int[]` | `checkCallingUriPermissions(List<Uri> uris, int modeFlags)` Determine whether the calling process and user ID has been granted permission to access a list of URIs.
`int` | `checkPermission(String permission, int pid, int uid)` Determine whether the given permission is allowed for a particular process and user ID running in the system.
`int` | `checkSelfPermission(String permission)` Determine whether you have been granted a particular permission.
`int` | `checkUriPermission(Uri uri, String readPermission, String writePermission, int pid, int uid, int modeFlags)` Check both a Uri and normal permission.
`int` | `checkUriPermission(Uri uri, int pid, int uid, int modeFlags)` Determine whether a particular process and user ID has been granted permission to access a specific URI.
`int[]` | `checkUriPermissions(List<Uri> uris, int pid, int uid, int modeFlags)` Determine whether a particular process and user ID has been granted permission to access a list of URIs.
`void` | `clearWallpaper()` This method is deprecated. Use `WallpaperManager.clear()` instead. This method requires the caller to hold the permission `Manifest.permission.SET_WALLPAPER`.
`Context` | `createAttributionContext(String attributionTag)` Return a new Context object for the current Context but attribute to a different tag.
`Context` | `createConfigurationContext(Configuration overrideConfiguration)` Return a new Context object for the current Context but whose resources are adjusted to match the given Configuration.
`Context` | `createContext(ContextParams contextParams)` Creates a context with specific properties and behaviors.
`Context` | `createDeviceProtectedStorageContext()` Return a new Context object for the current Context but whose storage APIs are backed by device-protected storage.
`Context` | `createDisplayContext(Display display)` Return a new Context object for the current Context but whose resources are adjusted to match the metrics of the given Display.
`Context` | `createPackageContext(String packageName, int flags)` Return a new Context object for the given application name.
`Context` | `createWindowContext(int type, Bundle options)` Creates a Context for a non-activity window.
`Context` | `createWindowContext(Display display, int type, Bundle options)` Creates a `Context` for a non-`activity` window on the given `Display`.
`String[]` | `databaseList()` Returns an array of strings naming the private databases associated with this Context's application package.
`boolean` | `deleteDatabase(String name)` Delete an existing private SQLiteDatabase associated with this Context's application package.
`boolean` | `deleteFile(String name)` Delete the given private file associated with this Context's application package.
`boolean` | `deleteSharedPreferences(String name)` Delete an existing shared preferences file.
`void` | `enforceCallingOrSelfPermission(String permission, String message)` If neither you nor the calling process of an IPC you are handling has been granted a particular permission, throw a `SecurityException`.
`void` | `enforceCallingOrSelfUriPermission(Uri uri, int modeFlags, String message)` If the calling process of an IPC or you has not been granted permission to access a specific URI, throw `SecurityException`.
`void` | `enforceCallingPermission(String permission, String message)` If the calling process of an IPC you are handling has not been granted a particular permission, throw a `SecurityException`.
`void` | `enforceCallingUriPermission(Uri uri, int modeFlags, String message)` If the calling process and user ID has not been granted permission to access a specific URI, throw `SecurityException`.
`void` | `enforcePermission(String permission, int pid, int uid, String message)` If the given permission is not allowed for a particular process and user ID running in the system, throw a `SecurityException`.
`void` | `enforceUriPermission(Uri uri, String readPermission, String writePermission, int pid, int uid, int modeFlags, String message)` Enforce both a Uri and normal permission.
`void` | `enforceUriPermission(Uri uri, int pid, int uid, int modeFlags, String message)` If a particular process and user ID has not been granted permission to access a specific URI, throw `SecurityException`.
`String[]` | `fileList()` Returns an array of strings naming the private files associated with this Context's application package.
`Context` | `getApplicationContext()` Return the context of the single, global Application object of the current process.
`ApplicationInfo` | `getApplicationInfo()` Return the full application info for this context's package.
`AssetManager` | `getAssets()` Returns an AssetManager instance for the application's package.
`AttributionSource` | `getAttributionSource()`
`Context` | `getBaseContext()`
`File` | `getCacheDir()` Returns the absolute path to the application specific cache directory on the filesystem.
`ClassLoader` | `getClassLoader()` Return a class loader you can use to retrieve classes in this package.
`File` | `getCodeCacheDir()` Returns the absolute path to the application specific cache directory on the filesystem designed for storing cached code.
`ContentResolver` | `getContentResolver()` Return a ContentResolver instance for your application's package.
`File` | `getDataDir()` Returns the absolute path to the directory on the filesystem where all private files belonging to this app are stored.
`File` | `getDatabasePath(String name)` Returns the absolute path on the filesystem where a database created with `openOrCreateDatabase(String, int, SQLiteDatabase.CursorFactory)` is stored.
`File` | `getDir(String name, int mode)` Retrieve, creating if needed, a new directory in which the application can place its own custom data files.
`Display` | `getDisplay()` Get the display this context is associated with.
`File` | `getExternalCacheDir()` Returns absolute path to application-specific directory on the primary shared/external storage device where the application can place cache files it owns.
`File[]` | `getExternalCacheDirs()` Returns absolute paths to application-specific directories on all shared/external storage devices where the application can place cache files it owns.
`File` | `getExternalFilesDir(String type)` Returns the absolute path to the directory on the primary shared/external storage device where the application can place persistent files it owns.
`File[]` | `getExternalFilesDirs(String type)` Returns absolute paths to application-specific directories on all shared/external storage devices where the application can place persistent files it owns.
`File[]` | `getExternalMediaDirs()` This method is deprecated. These directories still exist and are scanned, but developers are encouraged to migrate to inserting content into a `MediaStore` collection directly, as any app can contribute new media to `MediaStore` with no permissions required, starting in `Build.VERSION_CODES.Q`.
`File` | `getFileStreamPath(String name)` Returns the absolute path on the filesystem where a file created with `openFileOutput(String, int)` is stored.
`File` | `getFilesDir()` Returns the absolute path to the directory on the filesystem where files created with `openFileOutput(String, int)` are stored.
`Executor` | `getMainExecutor()` Return an `Executor` that will run enqueued tasks on the main thread associated with this context.
`Looper` | `getMainLooper()` Return the Looper for the main thread of the current process.
`File` | `getNoBackupFilesDir()` Returns the absolute path to the directory on the filesystem similar to `getFilesDir()`.
`File` | `getObbDir()` Return the primary shared/external storage directory where this application's OBB files (if there are any) can be found.
`File[]` | `getObbDirs()` Returns absolute paths to application-specific directories on all shared/external storage devices where the application's OBB files (if there are any) can be found.
`String` | `getPackageCodePath()` Return the full path to this context's primary Android package.
`PackageManager` | `getPackageManager()` Return PackageManager instance to find global package information.
`String` | `getPackageName()` Return the name of this application's package.
`String` | `getPackageResourcePath()` Return the full path to this context's primary Android package.
`ContextParams` | `getParams()` Return the set of parameters which this Context was created with, if it was created via `createContext(android.content.ContextParams)`.
`Resources` | `getResources()` Returns a Resources instance for the application's package.
`SharedPreferences` | `getSharedPreferences(String name, int mode)` Retrieve and hold the contents of the preferences file 'name', returning a SharedPreferences through which you can retrieve and modify its values.
`Object` | `getSystemService(String name)` Return the handle to a system-level service by name.
`String` | `getSystemServiceName(Class<?> serviceClass)` Gets the name of the system-level service that is represented by the specified class.
`Resources.Theme` | `getTheme()` Return the Theme object associated with this Context.
`Drawable` | `getWallpaper()` This method is deprecated. Use `WallpaperManager.get()` instead.
`int` | `getWallpaperDesiredMinimumHeight()` This method is deprecated. Use `WallpaperManager.getDesiredMinimumHeight()` instead.
`int` | `getWallpaperDesiredMinimumWidth()` This method is deprecated. Use `WallpaperManager.getDesiredMinimumWidth()` instead.
`void` | `grantUriPermission(String toPackage, Uri uri, int modeFlags)` Grant permission to access a specific Uri to another package, regardless of whether that package has general permission to access the Uri's content provider.
`boolean` | `isDeviceProtectedStorage()` Indicates if the storage APIs of this Context are backed by device-protected storage.
`boolean` | `isRestricted()` Indicates whether this Context is restricted.
`boolean` | `moveDatabaseFrom(Context sourceContext, String name)` Move an existing database file from the given source storage context to this context.
`boolean` | `moveSharedPreferencesFrom(Context sourceContext, String name)` Move an existing shared preferences file from the given source storage context to this context.
`FileInputStream` | `openFileInput(String name)` Open a private file associated with this Context's application package for reading.
`FileOutputStream` | `openFileOutput(String name, int mode)` Open a private file associated with this Context's application package for writing.
`SQLiteDatabase` | `openOrCreateDatabase(String name, int mode, SQLiteDatabase.CursorFactory factory, DatabaseErrorHandler errorHandler)` Open a new private SQLiteDatabase associated with this Context's application package.
`SQLiteDatabase` | `openOrCreateDatabase(String name, int mode, SQLiteDatabase.CursorFactory factory)` Open a new private SQLiteDatabase associated with this Context's application package.
`Drawable` | `peekWallpaper()` This method is deprecated. Use `WallpaperManager.peek()` instead.
`Intent` | `registerReceiver(BroadcastReceiver receiver, IntentFilter filter)` Register a BroadcastReceiver to be run in the main activity thread.
`Intent` | `registerReceiver(BroadcastReceiver receiver, IntentFilter filter, int flags)` Register to receive intent broadcasts, with the receiver optionally being exposed to Instant Apps.
`Intent` | `registerReceiver(BroadcastReceiver receiver, IntentFilter filter, String broadcastPermission, Handler scheduler, int flags)` Register to receive intent broadcasts, to run in the context of scheduler.
`Intent` | `registerReceiver(BroadcastReceiver receiver, IntentFilter filter, String broadcastPermission, Handler scheduler)` Register to receive intent broadcasts, to run in the context of scheduler.
`void` | `removeStickyBroadcast(Intent intent)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`void` | `removeStickyBroadcastAsUser(Intent intent, UserHandle user)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`void` | `revokeUriPermission(Uri uri, int modeFlags)` Remove all permissions to access a particular content provider Uri that were previously added with `grantUriPermission(String, Uri, int)` or any other mechanism.
`void` | `revokeUriPermission(String targetPackage, Uri uri, int modeFlags)` Remove permissions to access a particular content provider Uri that were previously added with `grantUriPermission(String, Uri, int)` for a specific target package.
`void` | `sendBroadcast(Intent intent, String receiverPermission)` Broadcast the given intent to all interested BroadcastReceivers, allowing an optional required permission to be enforced.
`void` | `sendBroadcast(Intent intent)` Broadcast the given intent to all interested BroadcastReceivers.
`void` | `sendBroadcastAsUser(Intent intent, UserHandle user)` Version of `sendBroadcast(android.content.Intent)` that allows you to specify the user the broadcast will be sent to.
`void` | `sendBroadcastAsUser(Intent intent, UserHandle user, String receiverPermission)` Version of `sendBroadcast(android.content.Intent, java.lang.String)` that allows you to specify the user the broadcast will be sent to.
`void` | `sendOrderedBroadcast(Intent intent, String receiverPermission, String receiverAppOp, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` Version of `sendOrderedBroadcast(android.content.Intent, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)` that allows you to specify the App Op to enforce restrictions on which receivers the broadcast will be sent to.
`void` | `sendOrderedBroadcast(Intent intent, int initialCode, String receiverPermission, String receiverAppOp, BroadcastReceiver resultReceiver, Handler scheduler, String initialData, Bundle initialExtras, Bundle options)`
`void` | `sendOrderedBroadcast(Intent intent, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` Version of `sendBroadcast(android.content.Intent)` that allows you to receive data back from the broadcast.
`void` | `sendOrderedBroadcast(Intent intent, String receiverPermission)` Broadcast the given intent to all interested BroadcastReceivers, delivering them one at a time to allow more preferred receivers to consume the broadcast before it is delivered to less preferred receivers.
`void` | `sendOrderedBroadcastAsUser(Intent intent, UserHandle user, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` Version of `sendOrderedBroadcast(android.content.Intent, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)` that allows you to specify the user the broadcast will be sent to.
`void` | `sendStickyBroadcast(Intent intent)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`void` | `sendStickyBroadcast(Intent intent, Bundle options)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`void` | `sendStickyBroadcastAsUser(Intent intent, UserHandle user)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`void` | `sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`void` | `sendStickyOrderedBroadcastAsUser(Intent intent, UserHandle user, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`void` | `setTheme(int resid)` Set the base theme for this context.
`void` | `setWallpaper(Bitmap bitmap)` This method is deprecated. Use `WallpaperManager.set()` instead. This method requires the caller to hold the permission `Manifest.permission.SET_WALLPAPER`.
`void` | `setWallpaper(InputStream data)` This method is deprecated. Use `WallpaperManager.set()` instead. This method requires the caller to hold the permission `Manifest.permission.SET_WALLPAPER`.
`void` | `startActivities(Intent[] intents, Bundle options)` Launch multiple new activities.
`void` | `startActivities(Intent[] intents)` Same as `startActivities(android.content.Intent[], android.os.Bundle)` with no options specified.
`void` | `startActivity(Intent intent)` Same as `startActivity(android.content.Intent, android.os.Bundle)` with no options specified.
`void` | `startActivity(Intent intent, Bundle options)` Launch a new activity.
`ComponentName` | `startForegroundService(Intent service)` Similar to `startService(android.content.Intent)`, but with an implicit promise that the Service will call `startForeground(int, android.app.Notification)` once it begins running.
`boolean` | `startInstrumentation(ComponentName className, String profileFile, Bundle arguments)` Start executing an `Instrumentation` class.
`void` | `startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)` Same as `startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int, android.os.Bundle)` with no options specified.
`void` | `startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)` Like `startActivity(android.content.Intent, android.os.Bundle)`, but taking a IntentSender to start.
`ComponentName` | `startService(Intent service)` Request that a given application service be started.
`boolean` | `stopService(Intent name)` Request that a given application service be stopped.
`void` | `unbindService(ServiceConnection conn)` Disconnect from an application service.
`void` | `unregisterReceiver(BroadcastReceiver receiver)` Unregister a previously registered BroadcastReceiver.
`void` | `updateServiceGroup(ServiceConnection conn, int group, int importance)` For a service previously bound with `bindService(Intent, ServiceConnection, int)` or a related method, change how the system manages that service's process in relation to other processes.
From class `android.content.Context`
`boolean` | `bindIsolatedService(Intent service, int flags, String instanceName, Executor executor, ServiceConnection conn)` Variation of `bindService(Intent, ServiceConnection, int)` that, in the specific case of isolated services, allows the caller to generate multiple instances of a service from a single component declaration.
`boolean` | `bindService(Intent service, int flags, Executor executor, ServiceConnection conn)` Same as `bindService(android.content.Intent, android.content.ServiceConnection, int)` with executor to control ServiceConnection callbacks.
`abstract boolean` | `bindService(Intent service, ServiceConnection conn, int flags)` Connect to an application service, creating it if needed.
`boolean` | `bindServiceAsUser(Intent service, ServiceConnection conn, int flags, UserHandle user)` Binds to a service in the given `user` in the same manner as `bindService(android.content.Intent, android.content.ServiceConnection, int)`.
`abstract int` | `checkCallingOrSelfPermission(String permission)` Determine whether the calling process of an IPC or you have been granted a particular permission.
`abstract int` | `checkCallingOrSelfUriPermission(Uri uri, int modeFlags)` Determine whether the calling process of an IPC or you has been granted permission to access a specific URI.
`int[]` | `checkCallingOrSelfUriPermissions(List<Uri> uris, int modeFlags)` Determine whether the calling process of an IPC or you has been granted permission to access a list of URIs.
`abstract int` | `checkCallingPermission(String permission)` Determine whether the calling process of an IPC you are handling has been granted a particular permission.
`abstract int` | `checkCallingUriPermission(Uri uri, int modeFlags)` Determine whether the calling process and user ID has been granted permission to access a specific URI.
`int[]` | `checkCallingUriPermissions(List<Uri> uris, int modeFlags)` Determine whether the calling process and user ID has been granted permission to access a list of URIs.
`abstract int` | `checkPermission(String permission, int pid, int uid)` Determine whether the given permission is allowed for a particular process and user ID running in the system.
`abstract int` | `checkSelfPermission(String permission)` Determine whether you have been granted a particular permission.
`abstract int` | `checkUriPermission(Uri uri, String readPermission, String writePermission, int pid, int uid, int modeFlags)` Check both a Uri and normal permission.
`abstract int` | `checkUriPermission(Uri uri, int pid, int uid, int modeFlags)` Determine whether a particular process and user ID has been granted permission to access a specific URI.
`int[]` | `checkUriPermissions(List<Uri> uris, int pid, int uid, int modeFlags)` Determine whether a particular process and user ID has been granted permission to access a list of URIs.
`abstract void` | `clearWallpaper()` This method is deprecated. Use `WallpaperManager.clear()` instead. This method requires the caller to hold the permission `Manifest.permission.SET_WALLPAPER`.
`Context` | `createAttributionContext(String attributionTag)` Return a new Context object for the current Context but attribute to a different tag.
`abstract Context` | `createConfigurationContext(Configuration overrideConfiguration)` Return a new Context object for the current Context but whose resources are adjusted to match the given Configuration.
`Context` | `createContext(ContextParams contextParams)` Creates a context with specific properties and behaviors.
`abstract Context` | `createContextForSplit(String splitName)` Return a new Context object for the given split name.
`abstract Context` | `createDeviceProtectedStorageContext()` Return a new Context object for the current Context but whose storage APIs are backed by device-protected storage.
`abstract Context` | `createDisplayContext(Display display)` Return a new Context object for the current Context but whose resources are adjusted to match the metrics of the given Display.
`abstract Context` | `createPackageContext(String packageName, int flags)` Return a new Context object for the given application name.
`Context` | `createWindowContext(int type, Bundle options)` Creates a Context for a non-activity window.
`Context` | `createWindowContext(Display display, int type, Bundle options)` Creates a `Context` for a non-`activity` window on the given `Display`.
`abstract String[]` | `databaseList()` Returns an array of strings naming the private databases associated with this Context's application package.
`abstract boolean` | `deleteDatabase(String name)` Delete an existing private SQLiteDatabase associated with this Context's application package.
`abstract boolean` | `deleteFile(String name)` Delete the given private file associated with this Context's application package.
`abstract boolean` | `deleteSharedPreferences(String name)` Delete an existing shared preferences file.
`abstract void` | `enforceCallingOrSelfPermission(String permission, String message)` If neither you nor the calling process of an IPC you are handling has been granted a particular permission, throw a `SecurityException`.
`abstract void` | `enforceCallingOrSelfUriPermission(Uri uri, int modeFlags, String message)` If the calling process of an IPC or you has not been granted permission to access a specific URI, throw `SecurityException`.
`abstract void` | `enforceCallingPermission(String permission, String message)` If the calling process of an IPC you are handling has not been granted a particular permission, throw a `SecurityException`.
`abstract void` | `enforceCallingUriPermission(Uri uri, int modeFlags, String message)` If the calling process and user ID has not been granted permission to access a specific URI, throw `SecurityException`.
`abstract void` | `enforcePermission(String permission, int pid, int uid, String message)` If the given permission is not allowed for a particular process and user ID running in the system, throw a `SecurityException`.
`abstract void` | `enforceUriPermission(Uri uri, String readPermission, String writePermission, int pid, int uid, int modeFlags, String message)` Enforce both a Uri and normal permission.
`abstract void` | `enforceUriPermission(Uri uri, int pid, int uid, int modeFlags, String message)` If a particular process and user ID has not been granted permission to access a specific URI, throw `SecurityException`.
`abstract String[]` | `fileList()` Returns an array of strings naming the private files associated with this Context's application package.
`abstract Context` | `getApplicationContext()` Return the context of the single, global Application object of the current process.
`abstract ApplicationInfo` | `getApplicationInfo()` Return the full application info for this context's package.
`abstract AssetManager` | `getAssets()` Returns an AssetManager instance for the application's package.
`AttributionSource` | `getAttributionSource()`
`String` | `getAttributionTag()` Attribution can be used in complex apps to logically separate parts of the app.
`abstract File` | `getCacheDir()` Returns the absolute path to the application specific cache directory on the filesystem.
`abstract ClassLoader` | `getClassLoader()` Return a class loader you can use to retrieve classes in this package.
`abstract File` | `getCodeCacheDir()` Returns the absolute path to the application specific cache directory on the filesystem designed for storing cached code.
`final int` | `getColor(int id)` Returns a color associated with a particular resource ID and styled for the current theme.
`final ColorStateList` | `getColorStateList(int id)` Returns a color state list associated with a particular resource ID and styled for the current theme.
`abstract ContentResolver` | `getContentResolver()` Return a ContentResolver instance for your application's package.
`abstract File` | `getDataDir()` Returns the absolute path to the directory on the filesystem where all private files belonging to this app are stored.
`abstract File` | `getDatabasePath(String name)` Returns the absolute path on the filesystem where a database created with `openOrCreateDatabase(String, int, SQLiteDatabase.CursorFactory)` is stored.
`abstract File` | `getDir(String name, int mode)` Retrieve, creating if needed, a new directory in which the application can place its own custom data files.
`Display` | `getDisplay()` Get the display this context is associated with.
`final Drawable` | `getDrawable(int id)` Returns a drawable object associated with a particular resource ID and styled for the current theme.
`abstract File` | `getExternalCacheDir()` Returns absolute path to application-specific directory on the primary shared/external storage device where the application can place cache files it owns.
`abstract File[]` | `getExternalCacheDirs()` Returns absolute paths to application-specific directories on all shared/external storage devices where the application can place cache files it owns.
`abstract File` | `getExternalFilesDir(String type)` Returns the absolute path to the directory on the primary shared/external storage device where the application can place persistent files it owns.
`abstract File[]` | `getExternalFilesDirs(String type)` Returns absolute paths to application-specific directories on all shared/external storage devices where the application can place persistent files it owns.
`abstract File[]` | `getExternalMediaDirs()` This method is deprecated. These directories still exist and are scanned, but developers are encouraged to migrate to inserting content into a `MediaStore` collection directly, as any app can contribute new media to `MediaStore` with no permissions required, starting in `Build.VERSION_CODES.Q`.
`abstract File` | `getFileStreamPath(String name)` Returns the absolute path on the filesystem where a file created with `openFileOutput(String, int)` is stored.
`abstract File` | `getFilesDir()` Returns the absolute path to the directory on the filesystem where files created with `openFileOutput(String, int)` are stored.
`Executor` | `getMainExecutor()` Return an `Executor` that will run enqueued tasks on the main thread associated with this context.
`abstract Looper` | `getMainLooper()` Return the Looper for the main thread of the current process.
`abstract File` | `getNoBackupFilesDir()` Returns the absolute path to the directory on the filesystem similar to `getFilesDir()`.
`abstract File` | `getObbDir()` Return the primary shared/external storage directory where this application's OBB files (if there are any) can be found.
`abstract File[]` | `getObbDirs()` Returns absolute paths to application-specific directories on all shared/external storage devices where the application's OBB files (if there are any) can be found.
`String` | `getOpPackageName()` Return the package name that should be used for `AppOpsManager` calls from this context, so that app ops manager's uid verification will work with the name.
`abstract String` | `getPackageCodePath()` Return the full path to this context's primary Android package.
`abstract PackageManager` | `getPackageManager()` Return PackageManager instance to find global package information.
`abstract String` | `getPackageName()` Return the name of this application's package.
`abstract String` | `getPackageResourcePath()` Return the full path to this context's primary Android package.
`ContextParams` | `getParams()` Return the set of parameters which this Context was created with, if it was created via `createContext(android.content.ContextParams)`.
`abstract Resources` | `getResources()` Returns a Resources instance for the application's package.
`abstract SharedPreferences` | `getSharedPreferences(String name, int mode)` Retrieve and hold the contents of the preferences file 'name', returning a SharedPreferences through which you can retrieve and modify its values.
`final String` | `getString(int resId, Object... formatArgs)` Returns a localized formatted string from the application's package's default string table, substituting the format arguments as defined in `Formatter` and `String.format(String, Object...)`.
`final String` | `getString(int resId)` Returns a localized string from the application's package's default string table.
`final <T> T` | `getSystemService(Class<T> serviceClass)` Return the handle to a system-level service by class.
`abstract Object` | `getSystemService(String name)` Return the handle to a system-level service by name.
`abstract String` | `getSystemServiceName(Class<?> serviceClass)` Gets the name of the system-level service that is represented by the specified class.
`final CharSequence` | `getText(int resId)` Return a localized, styled CharSequence from the application's package's default string table.
`abstract Resources.Theme` | `getTheme()` Return the Theme object associated with this Context.
`abstract Drawable` | `getWallpaper()` This method is deprecated. Use `WallpaperManager.get()` instead.
`abstract int` | `getWallpaperDesiredMinimumHeight()` This method is deprecated. Use `WallpaperManager.getDesiredMinimumHeight()` instead.
`abstract int` | `getWallpaperDesiredMinimumWidth()` This method is deprecated. Use `WallpaperManager.getDesiredMinimumWidth()` instead.
`abstract void` | `grantUriPermission(String toPackage, Uri uri, int modeFlags)` Grant permission to access a specific Uri to another package, regardless of whether that package has general permission to access the Uri's content provider.
`abstract boolean` | `isDeviceProtectedStorage()` Indicates if the storage APIs of this Context are backed by device-protected storage.
`boolean` | `isRestricted()` Indicates whether this Context is restricted.
`boolean` | `isUiContext()` Returns `true` if the context is a UI context which can access UI components such as `WindowManager`, `LayoutInflater` or `WallpaperManager`.
`abstract boolean` | `moveDatabaseFrom(Context sourceContext, String name)` Move an existing database file from the given source storage context to this context.
`abstract boolean` | `moveSharedPreferencesFrom(Context sourceContext, String name)` Move an existing shared preferences file from the given source storage context to this context.
`final TypedArray` | `obtainStyledAttributes(AttributeSet set, int[] attrs)` Retrieve styled attribute information in this Context's theme.
`final TypedArray` | `obtainStyledAttributes(AttributeSet set, int[] attrs, int defStyleAttr, int defStyleRes)` Retrieve styled attribute information in this Context's theme.
`final TypedArray` | `obtainStyledAttributes(int resid, int[] attrs)` Retrieve styled attribute information in this Context's theme.
`final TypedArray` | `obtainStyledAttributes(int[] attrs)` Retrieve styled attribute information in this Context's theme.
`abstract FileInputStream` | `openFileInput(String name)` Open a private file associated with this Context's application package for reading.
`abstract FileOutputStream` | `openFileOutput(String name, int mode)` Open a private file associated with this Context's application package for writing.
`abstract SQLiteDatabase` | `openOrCreateDatabase(String name, int mode, SQLiteDatabase.CursorFactory factory, DatabaseErrorHandler errorHandler)` Open a new private SQLiteDatabase associated with this Context's application package.
`abstract SQLiteDatabase` | `openOrCreateDatabase(String name, int mode, SQLiteDatabase.CursorFactory factory)` Open a new private SQLiteDatabase associated with this Context's application package.
`abstract Drawable` | `peekWallpaper()` This method is deprecated. Use `WallpaperManager.peek()` instead.
`void` | `registerComponentCallbacks(ComponentCallbacks callback)` Add a new `ComponentCallbacks` to the base application of the Context, which will be called at the same times as the ComponentCallbacks methods of activities and other components are called.
`abstract Intent` | `registerReceiver(BroadcastReceiver receiver, IntentFilter filter)` Register a BroadcastReceiver to be run in the main activity thread.
`abstract Intent` | `registerReceiver(BroadcastReceiver receiver, IntentFilter filter, int flags)` Register to receive intent broadcasts, with the receiver optionally being exposed to Instant Apps.
`abstract Intent` | `registerReceiver(BroadcastReceiver receiver, IntentFilter filter, String broadcastPermission, Handler scheduler, int flags)` Register to receive intent broadcasts, to run in the context of scheduler.
`abstract Intent` | `registerReceiver(BroadcastReceiver receiver, IntentFilter filter, String broadcastPermission, Handler scheduler)` Register to receive intent broadcasts, to run in the context of scheduler.
`abstract void` | `removeStickyBroadcast(Intent intent)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`abstract void` | `removeStickyBroadcastAsUser(Intent intent, UserHandle user)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`abstract void` | `revokeUriPermission(Uri uri, int modeFlags)` Remove all permissions to access a particular content provider Uri that were previously added with `grantUriPermission(String, Uri, int)` or any other mechanism.
`abstract void` | `revokeUriPermission(String toPackage, Uri uri, int modeFlags)` Remove permissions to access a particular content provider Uri that were previously added with `grantUriPermission(String, Uri, int)` for a specific target package.
`abstract void` | `sendBroadcast(Intent intent, String receiverPermission)` Broadcast the given intent to all interested BroadcastReceivers, allowing an optional required permission to be enforced.
`abstract void` | `sendBroadcast(Intent intent)` Broadcast the given intent to all interested BroadcastReceivers.
`abstract void` | `sendBroadcastAsUser(Intent intent, UserHandle user)` Version of `sendBroadcast(android.content.Intent)` that allows you to specify the user the broadcast will be sent to.
`abstract void` | `sendBroadcastAsUser(Intent intent, UserHandle user, String receiverPermission)` Version of `sendBroadcast(android.content.Intent, java.lang.String)` that allows you to specify the user the broadcast will be sent to.
`void` | `sendBroadcastWithMultiplePermissions(Intent intent, String[] receiverPermissions)` Broadcast the given intent to all interested BroadcastReceivers, allowing an array of required permissions to be enforced.
`void` | `sendOrderedBroadcast(Intent intent, String receiverPermission, String receiverAppOp, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` Version of `sendOrderedBroadcast(android.content.Intent, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)` that allows you to specify the App Op to enforce restrictions on which receivers the broadcast will be sent to.
`abstract void` | `sendOrderedBroadcast(Intent intent, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` Version of `sendBroadcast(android.content.Intent)` that allows you to receive data back from the broadcast.
`abstract void` | `sendOrderedBroadcast(Intent intent, String receiverPermission)` Broadcast the given intent to all interested BroadcastReceivers, delivering them one at a time to allow more preferred receivers to consume the broadcast before it is delivered to less preferred receivers.
`abstract void` | `sendOrderedBroadcastAsUser(Intent intent, UserHandle user, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` Version of `sendOrderedBroadcast(android.content.Intent, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)` that allows you to specify the user the broadcast will be sent to.
`abstract void` | `sendStickyBroadcast(Intent intent)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`void` | `sendStickyBroadcast(Intent intent, Bundle options)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`abstract void` | `sendStickyBroadcastAsUser(Intent intent, UserHandle user)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`abstract void` | `sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`abstract void` | `sendStickyOrderedBroadcastAsUser(Intent intent, UserHandle user, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)` This method is deprecated. Sticky broadcasts should not be used. They provide no security (anyone can access them), no protection (anyone can modify them), and many other problems. The recommended pattern is to use a non-sticky broadcast to report that something has changed, with another mechanism for apps to retrieve the current value whenever desired.
`abstract void` | `setTheme(int resid)` Set the base theme for this context.
`abstract void` | `setWallpaper(Bitmap bitmap)` This method is deprecated. Use `WallpaperManager.set()` instead. This method requires the caller to hold the permission `Manifest.permission.SET_WALLPAPER`.
`abstract void` | `setWallpaper(InputStream data)` This method is deprecated. Use `WallpaperManager.set()` instead. This method requires the caller to hold the permission `Manifest.permission.SET_WALLPAPER`.
`abstract void` | `startActivities(Intent[] intents, Bundle options)` Launch multiple new activities.
`abstract void` | `startActivities(Intent[] intents)` Same as `startActivities(android.content.Intent[], android.os.Bundle)` with no options specified.
`abstract void` | `startActivity(Intent intent)` Same as `startActivity(android.content.Intent, android.os.Bundle)` with no options specified.
`abstract void` | `startActivity(Intent intent, Bundle options)` Launch a new activity.
`abstract ComponentName` | `startForegroundService(Intent service)` Similar to `startService(android.content.Intent)`, but with an implicit promise that the Service will call `startForeground(int, android.app.Notification)` once it begins running.
`abstract boolean` | `startInstrumentation(ComponentName className, String profileFile, Bundle arguments)` Start executing an `Instrumentation` class.
`abstract void` | `startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)` Same as `startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int, android.os.Bundle)` with no options specified.
`abstract void` | `startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)` Like `startActivity(android.content.Intent, android.os.Bundle)`, but taking a IntentSender to start.
`abstract ComponentName` | `startService(Intent service)` Request that a given application service be started.
`abstract boolean` | `stopService(Intent service)` Request that a given application service be stopped.
`abstract void` | `unbindService(ServiceConnection conn)` Disconnect from an application service.
`void` | `unregisterComponentCallbacks(ComponentCallbacks callback)` Remove a `ComponentCallbacks` object that was previously registered with `registerComponentCallbacks(android.content.ComponentCallbacks)`.
`abstract void` | `unregisterReceiver(BroadcastReceiver receiver)` Unregister a previously registered BroadcastReceiver.
`void` | `updateServiceGroup(ServiceConnection conn, int group, int importance)` For a service previously bound with `bindService(Intent, ServiceConnection, int)` or a related method, change how the system manages that service's process in relation to other processes.
From class `java.lang.Object`
`Object` | `clone()` Creates and returns a copy of this object.
`boolean` | `equals(Object obj)` Indicates whether some other object is "equal to" this one.
`void` | `finalize()` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
`final Class<?>` | `getClass()` Returns the runtime class of this `Object`.
`int` | `hashCode()` Returns a hash code value for the object.
`final void` | `notify()` Wakes up a single thread that is waiting on this object's monitor.
`final void` | `notifyAll()` Wakes up all threads that are waiting on this object's monitor.
`String` | `toString()` Returns a string representation of the object.
`final void` | `wait(long timeout, int nanos)` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.
`final void` | `wait(long timeout)` Causes the current thread to wait until either another thread invokes the `notify()` method or the `notifyAll()` method for this object, or a specified amount of time has elapsed.
`final void` | `wait()` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object.
From interface `android.view.LayoutInflater.Factory2`
`abstract View` | `onCreateView(View parent, String name, Context context, AttributeSet attrs)` Version of `LayoutInflater.Factory.onCreateView(java.lang.String, android.content.Context, android.util.AttributeSet)` that also supplies the parent that the view created view will be placed in.
From interface `android.view.Window.Callback`
`abstract boolean` | `dispatchGenericMotionEvent(MotionEvent event)` Called to process generic motion events.
`abstract boolean` | `dispatchKeyEvent(KeyEvent event)` Called to process key events.
`abstract boolean` | `dispatchKeyShortcutEvent(KeyEvent event)` Called to process a key shortcut event.
`abstract boolean` | `dispatchPopulateAccessibilityEvent(AccessibilityEvent event)` Called to process population of `AccessibilityEvent`s.
`abstract boolean` | `dispatchTouchEvent(MotionEvent event)` Called to process touch screen events.
`abstract boolean` | `dispatchTrackballEvent(MotionEvent event)` Called to process trackball events.
`abstract void` | `onActionModeFinished(ActionMode mode)` Called when an action mode has been finished.
`abstract void` | `onActionModeStarted(ActionMode mode)` Called when an action mode has been started.
`abstract void` | `onAttachedToWindow()` Called when the window has been attached to the window manager.
`abstract void` | `onContentChanged()` This hook is called whenever the content view of the screen changes (due to a call to `Window.setContentView` or `Window.addContentView`).
`abstract boolean` | `onCreatePanelMenu(int featureId, Menu menu)` Initialize the contents of the menu for panel 'featureId'.
`abstract View` | `onCreatePanelView(int featureId)` Instantiate the view to display in the panel for 'featureId'.
`abstract void` | `onDetachedFromWindow()` Called when the window has been detached from the window manager.
`abstract boolean` | `onMenuItemSelected(int featureId, MenuItem item)` Called when a panel's menu item has been selected by the user.
`abstract boolean` | `onMenuOpened(int featureId, Menu menu)` Called when a panel's menu is opened by the user.
`abstract void` | `onPanelClosed(int featureId, Menu menu)` Called when a panel is being closed.
`default void` | `onPointerCaptureChanged(boolean hasCapture)` Called when pointer capture is enabled or disabled for the current window.
`abstract boolean` | `onPreparePanel(int featureId, View view, Menu menu)` Prepare a panel to be displayed.
`default void` | `onProvideKeyboardShortcuts(List<KeyboardShortcutGroup> data, Menu menu, int deviceId)` Called when Keyboard Shortcuts are requested for the current window.
`abstract boolean` | `onSearchRequested()` Called when the user signals the desire to start a search.
`abstract boolean` | `onSearchRequested(SearchEvent searchEvent)` Called when the user signals the desire to start a search.
`abstract void` | `onWindowAttributesChanged(WindowManager.LayoutParams attrs)` This is called whenever the current window attributes change.
`abstract void` | `onWindowFocusChanged(boolean hasFocus)` This hook is called whenever the window focus changes.
`abstract ActionMode` | `onWindowStartingActionMode(ActionMode.Callback callback)` Called when an action mode is being started for this window.
`abstract ActionMode` | `onWindowStartingActionMode(ActionMode.Callback callback, int type)` Called when an action mode is being started for this window.
From interface `android.view.KeyEvent.Callback`
`abstract boolean` | `onKeyDown(int keyCode, KeyEvent event)` Called when a key down event has occurred.
`abstract boolean` | `onKeyLongPress(int keyCode, KeyEvent event)` Called when a long press has occurred.
`abstract boolean` | `onKeyMultiple(int keyCode, int count, KeyEvent event)` Called when a user's interaction with an analog control, such as flinging a trackball, generates simulated down/up events for the same key multiple times in quick succession.
`abstract boolean` | `onKeyUp(int keyCode, KeyEvent event)` Called when a key up event has occurred.
From interface `android.view.View.OnCreateContextMenuListener`
`abstract void` | `onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo)` Called when the context menu for this view is being built.
From interface `android.content.ComponentCallbacks2`
`abstract void` | `onTrimMemory(int level)` Called when the operating system has determined that it is a good time for a process to trim unneeded memory from its process.
From interface `android.widget.ExpandableListView.OnChildClickListener`
`abstract boolean` | `onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id)` Callback method to be invoked when a child in this expandable list has been clicked.
From interface `android.widget.ExpandableListView.OnGroupCollapseListener`
`abstract void` | `onGroupCollapse(int groupPosition)` Callback method to be invoked when a group in this expandable list has been collapsed.
From interface `android.widget.ExpandableListView.OnGroupExpandListener`
`abstract void` | `onGroupExpand(int groupPosition)` Callback method to be invoked when a group in this expandable list has been expanded.
From interface `android.view.LayoutInflater.Factory`
`abstract View` | `onCreateView(String name, Context context, AttributeSet attrs)` Hook you can supply that is called when inflating from a LayoutInflater.
From interface `android.content.ComponentCallbacks`
`abstract void` | `onConfigurationChanged(Configuration newConfig)` Called by the system when the device configuration changes while your component is running.
`abstract void` | `onLowMemory()` This is called when the overall system is running low on memory, and actively running processes should trim their memory usage.

## Public constructors

### ExpandableListActivity

    public ExpandableListActivity ()

## Public methods

### getExpandableListAdapter

    public ExpandableListAdapter getExpandableListAdapter ()

Get the ExpandableListAdapter associated with this activity's ExpandableListView.

Returns
`ExpandableListAdapter` |

### getExpandableListView

    public ExpandableListView getExpandableListView ()

Get the activity's expandable list view widget. This can be used to get the selection, set the selection, and many other useful functions.

Returns
`ExpandableListView` |

See also:

- `ExpandableListView`

### getSelectedId

    public long getSelectedId ()

Gets the ID of the currently selected group or child.

Returns
`long` | The ID of the currently selected group or child.

### getSelectedPosition

    public long getSelectedPosition ()

Gets the position (in packed position representation) of the currently selected group or child. Use `ExpandableListView#getPackedPositionType`, `ExpandableListView#getPackedPositionGroup`, and `ExpandableListView#getPackedPositionChild` to unpack the returned packed position.

Returns
`long` | A packed position representation containing the currently selected group or child's position and type.

### onChildClick

    public boolean onChildClick (ExpandableListView parent,
                    View v,
                    int groupPosition,
                    int childPosition,
                    long id)

Override this for receiving callbacks when a child has been clicked.

Callback method to be invoked when a child in this expandable list has been clicked.

Parameters
`parent` | `ExpandableListView`: The ExpandableListView where the click happened
`v` | `View`: The view within the expandable list/ListView that was clicked
`groupPosition` | `int`: The group position that contains the child that was clicked
`childPosition` | `int`: The child position within the group
`id` | `long`: The row id of the child that was clicked

Returns
`boolean` | True if the click was handled

### onContentChanged

    public void onContentChanged ()

Updates the screen state (current list and other views) when the content changes.

See also:

- `Activity.onContentChanged()`

### onCreateContextMenu

    public void onCreateContextMenu (ContextMenu menu,
                    View v,
                    ContextMenu.ContextMenuInfo menuInfo)

Override this to populate the context menu when an item is long pressed. menuInfo will contain an `ExpandableListView.ExpandableListContextMenuInfo` whose packedPosition is a packed position that should be used with `ExpandableListView#getPackedPositionType(long)` and the other similar methods.

Called when a context menu for the `view` is about to be shown. Unlike `onCreateOptionsMenu(android.view.Menu)`, this will be called every time the context menu is about to be shown and should be populated for the view (or item inside the view for `AdapterView` subclasses, this can be found in the `menuInfo`)).

Use `onContextItemSelected(android.view.MenuItem)` to know when an item has been selected.

It is not safe to hold onto the context menu after this method returns.

Parameters
`menu` | `ContextMenu`: The context menu that is being built
`v` | `View`: The view for which the context menu is being built
`menuInfo` | `ContextMenu.ContextMenuInfo`: Extra information about the item for which the context menu should be shown. This information will vary depending on the class of v.

### onGroupCollapse

    public void onGroupCollapse (int groupPosition)

Override this for receiving callbacks when a group has been collapsed.

Parameters
`groupPosition` | `int`: The group position that was collapsed

### onGroupExpand

    public void onGroupExpand (int groupPosition)

Override this for receiving callbacks when a group has been expanded.

Parameters
`groupPosition` | `int`: The group position that was expanded

### setListAdapter

    public void setListAdapter (ExpandableListAdapter adapter)

Provide the adapter for the expandable list.

Parameters
`adapter` | `ExpandableListAdapter`

### setSelectedChild

    public boolean setSelectedChild (int groupPosition,
                    int childPosition,
                    boolean shouldExpandGroup)

Sets the selection to the specified child. If the child is in a collapsed group, the group will only be expanded and child subsequently selected if shouldExpandGroup is set to true, otherwise the method will return false.

Parameters
`groupPosition` | `int`: The position of the group that contains the child.
`childPosition` | `int`: The position of the child within the group.
`shouldExpandGroup` | `boolean`: Whether the child's group should be expanded if it is collapsed.

Returns
`boolean` | Whether the selection was successfully set on the child.

### setSelectedGroup

    public void setSelectedGroup (int groupPosition)

Sets the selection to the specified group.

Parameters
`groupPosition` | `int`: The position of the group that should be selected.

## Protected methods

### onRestoreInstanceState

    protected void onRestoreInstanceState (Bundle state)

Ensures the expandable list view has been created before Activity restores all of the view states.

Parameters
`state` | `Bundle`: the data most recently supplied in `Activity.onSaveInstanceState(Bundle)`. This value cannot be `null`.

See also:

- `Activity.onRestoreInstanceState(Bundle)`

Full name *
Email address *
Company / developer name
One of your Play Store app URLs *
Which best describes your business:*
Apps
Games
Apps & Games
*
*