# CredentialProviderService

Artifact: [androidx.credentials:credentials](https://developer.android.com/jetpack/androidx/releases/credentials) [View Source](https://cs.android.com/search?q=file:androidx/credentials/provider/CredentialProviderService.kt+class:androidx.credentials.provider.CredentialProviderService) Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/credentials#1.2.0)

*** ** * ** ***


```
@RequiresApi(value = 34)
abstract class CredentialProviderService : CredentialProviderService
```

<br />

|---|---|---|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) ||||||
| ↳ | [android.content.Context](https://developer.android.com/reference/android/content/Context.html) |||||
|   | ↳ | [android.content.ContextWrapper](https://developer.android.com/reference/android/content/ContextWrapper.html) ||||
|   |   | ↳ | [android.app.Service](https://developer.android.com/reference/android/app/Service.html) |||
|   |   |   | ↳ | [android.service.credentials.CredentialProviderService](https://developer.android.com/reference/android/service/credentials/CredentialProviderService.html) ||
|   |   |   |   | ↳ | [androidx.credentials.provider.CredentialProviderService](https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService) |

*** ** * ** ***

A `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService` is a service used to save and retrieve credentials for a given user, upon the request of a client app that typically uses these credentials for sign-in flows.

The credential retrieval and creation/saving is mediated by the Android System that aggregates credentials from multiple credential provider services, and presents them to the user in the form of a selector UI for credential selections/account selections/ confirmations etc.

A `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService` is only bound to the Android System for the span of a `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialManager` get/create API call. The service is bound only if :

1. The service requires the `https://developer.android.com/reference/android/Manifest.permission.html#BIND_CREDENTIAL_PROVIDER_SERVICE` permission.

2. The user has enabled this service as a credential provider from the settings.

## Basic Usage

The basic Credential Manager flow is as such:

- Client app calls one of the APIs exposed in `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialManager`.

- Android system propagates the developer's request to providers that have been enabled by the user, and can support the `https://developer.android.com/reference/kotlin/androidx/credentials/Credential` type specified in the request. We call this the **query phase** of provider communication. Developer may specify a different set of request parameters to be sent to the provider during this phase.

- In this query phase, providers, in most cases, will respond with a list of `https://developer.android.com/reference/android/service/credentials/CredentialEntry.html`, and an optional list of `https://developer.android.com/reference/kotlin/androidx/credentials/provider/Action` entries (for the get flow), and a list of `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CreateEntry` (for the create flow). No actual credentials will be returned in this phase.

- Provider responses are aggregated and presented to the user in the form of a selector UI.

- User selects an entry on the selector.

- Android System invokes the `https://developer.android.com/reference/android/app/PendingIntent.html` associated with this entry, that belongs to the corresponding provider. We call this the **final phase** of provider communication. The `https://developer.android.com/reference/android/app/PendingIntent.html` contains the complete request originally created by the developer.

- Provider finishes the `https://developer.android.com/reference/android/app/Activity.html` invoked by the `https://developer.android.com/reference/android/app/PendingIntent.html` by setting the result as the activity is finished.

- Android System sends back the result to the client app.

The flow described above minimizes the amount of time a service is bound to the system. Calls to the service are considered stateless. If a service wishes to maintain state between the calls, it must do its own state management. Note: The service's process might be killed by the Android System when unbound, for cases such as low memory on the device.

## Service Registration

In order for Credential Manager to propagate requests to a given provider service, the provider must:

- Extend this class and implement the abstract methods.

- Declare the `https://developer.android.com/reference/android/service/credentials/CredentialProviderService.html#SERVICE_INTERFACE` intent as handled by the service.

- Require the `https://developer.android.com/reference/android/Manifest.permission.html#BIND_CREDENTIAL_PROVIDER_SERVICE` permission.

- Declare capabilities that the provider supports. Capabilities are essentially credential types that the provider can handle. Capabilities must be added to the metadata of the service against `https://developer.android.com/reference/android/service/credentials/CredentialProviderService.html#SERVICE_META_DATA`.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#CredentialProviderService()()` |

| ### Public functions |
|---|---|
| `final https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#onBeginCreateCredential(android.service.credentials.BeginCreateCredentialRequest,android.os.CancellationSignal,android.os.OutcomeReceiver)( request: https://developer.android.com/reference/android/service/credentials/BeginCreateCredentialRequest.html, cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html, callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/android/service/credentials/BeginCreateCredentialResponse.html, https://developer.android.com/reference/android/credentials/CreateCredentialException.html> )` |
| `abstract https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#onBeginCreateCredentialRequest(androidx.credentials.provider.BeginCreateCredentialRequest,android.os.CancellationSignal,android.os.OutcomeReceiver)( request: https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginCreateCredentialRequest, cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html, callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginCreateCredentialResponse, https://developer.android.com/reference/kotlin/androidx/credentials/exceptions/CreateCredentialException> )` Called by the Android System in response to a client app calling `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialManager#createCredential(android.content.Context,androidx.credentials.CreateCredentialRequest)`, to create/save a credential with a credential provider installed on the device. |
| `final https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#onBeginGetCredential(android.service.credentials.BeginGetCredentialRequest,android.os.CancellationSignal,android.os.OutcomeReceiver)( request: https://developer.android.com/reference/android/service/credentials/BeginGetCredentialRequest.html, cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html, callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/android/service/credentials/BeginGetCredentialResponse.html, https://developer.android.com/reference/android/credentials/GetCredentialException.html> )` |
| `abstract https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#onBeginGetCredentialRequest(androidx.credentials.provider.BeginGetCredentialRequest,android.os.CancellationSignal,android.os.OutcomeReceiver)( request: https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginGetCredentialRequest, cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html, callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginGetCredentialResponse, https://developer.android.com/reference/kotlin/androidx/credentials/exceptions/GetCredentialException> )` Called by the Android System in response to a client app calling `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialManager#getCredential(android.content.Context,androidx.credentials.GetCredentialRequest)`, to get a credential sourced from a credential provider installed on the device. |
| `final https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#onClearCredentialState(android.service.credentials.ClearCredentialStateRequest,android.os.CancellationSignal,android.os.OutcomeReceiver)( request: https://developer.android.com/reference/android/service/credentials/ClearCredentialStateRequest.html, cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html, callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/java/lang/Void.html, https://developer.android.com/reference/android/credentials/ClearCredentialStateException.html> )` |
| `abstract https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#onClearCredentialStateRequest(androidx.credentials.provider.ProviderClearCredentialStateRequest,android.os.CancellationSignal,android.os.OutcomeReceiver)( request: https://developer.android.com/reference/kotlin/androidx/credentials/provider/ProviderClearCredentialStateRequest, cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html, callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/java/lang/Void.html?, https://developer.android.com/reference/kotlin/androidx/credentials/exceptions/ClearCredentialException> )` Called by the Android System in response to a client app calling `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialManager#clearCredentialState(androidx.credentials.ClearCredentialStateRequest)`. |

### Inherited functions

From [android.content.Context](https://developer.android.com/reference/android/content/Context.html) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/Context.html#bindIsolatedService(android.content.Intent, android.content.Context.BindServiceFlags, java.lang.String, java.util.concurrent.Executor, android.content.ServiceConnection)(
service: https://developer.android.com/reference/android/content/Intent.html,
flags: https://developer.android.com/reference/android/content/Context.BindServiceFlags.html,
instanceName: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html,
executor: https://developer.android.com/reference/java/util/concurrent/Executor.html,
conn: https://developer.android.com/reference/android/content/ServiceConnection.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/Context.html#getColor(int)(id: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://developer.android.com/reference/android/content/res/ColorStateList.html` `https://developer.android.com/reference/android/content/Context.html#getColorStateList(int)(id: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://developer.android.com/reference/android/graphics/drawable/Drawable.html?` `https://developer.android.com/reference/android/content/Context.html#getDrawable(int)(id: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` `https://developer.android.com/reference/android/content/Context.html#getString(int)(resId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` `https://developer.android.com/reference/android/content/Context.html#getString(int, java.lang.Object...)(resId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, vararg formatArgs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html)` `T` `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/android/content/Context.html#getSystemService(java.lang.Class&lt;T&gt;)(serviceClass: https://developer.android.com/reference/java/lang/Class.html<T>)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-char-sequence/index.html` `https://developer.android.com/reference/android/content/Context.html#getText(int)(resId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://developer.android.com/reference/android/content/res/TypedArray.html` `https://developer.android.com/reference/android/content/Context.html#obtainStyledAttributes(int[])(attrs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html)` `https://developer.android.com/reference/android/content/res/TypedArray.html` `https://developer.android.com/reference/android/content/Context.html#obtainStyledAttributes(int, int[])(resid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, attrs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html)` `https://developer.android.com/reference/android/content/res/TypedArray.html` `https://developer.android.com/reference/android/content/Context.html#obtainStyledAttributes(android.util.AttributeSet, int[])(set: https://developer.android.com/reference/android/util/AttributeSet.html?, attrs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html)` `https://developer.android.com/reference/android/content/res/TypedArray.html` `https://developer.android.com/reference/android/content/Context.html#obtainStyledAttributes(android.util.AttributeSet, int[], int, int)(
set: https://developer.android.com/reference/android/util/AttributeSet.html?,
attrs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html,
defStyleAttr: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
defStyleRes: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/Context.html#revokeSelfPermissionOnKill(java.lang.String)(permName: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/Context.html#sendBroadcastWithMultiplePermissions(android.content.Intent, java.lang.String[])(
intent: https://developer.android.com/reference/android/content/Intent.html,
receiverPermissions: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html>
)` From [android.content.ContextWrapper](https://developer.android.com/reference/android/content/ContextWrapper.html) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#bindIsolatedService(android.content.Intent, int, java.lang.String, java.util.concurrent.Executor, android.content.ServiceConnection)(
service: https://developer.android.com/reference/android/content/Intent.html,
flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
instanceName: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html,
executor: https://developer.android.com/reference/java/util/concurrent/Executor.html,
conn: https://developer.android.com/reference/android/content/ServiceConnection.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#bindService(android.content.Intent, android.content.ServiceConnection, android.content.Context.BindServiceFlags)(
service: https://developer.android.com/reference/android/content/Intent.html,
conn: https://developer.android.com/reference/android/content/ServiceConnection.html,
flags: https://developer.android.com/reference/android/content/Context.BindServiceFlags.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#bindService(android.content.Intent, android.content.ServiceConnection, int)(service: https://developer.android.com/reference/android/content/Intent.html, conn: https://developer.android.com/reference/android/content/ServiceConnection.html, flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#bindService(android.content.Intent, android.content.Context.BindServiceFlags, java.util.concurrent.Executor, android.content.ServiceConnection)(
service: https://developer.android.com/reference/android/content/Intent.html,
flags: https://developer.android.com/reference/android/content/Context.BindServiceFlags.html,
executor: https://developer.android.com/reference/java/util/concurrent/Executor.html,
conn: https://developer.android.com/reference/android/content/ServiceConnection.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#bindService(android.content.Intent, int, java.util.concurrent.Executor, android.content.ServiceConnection)(
service: https://developer.android.com/reference/android/content/Intent.html,
flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
executor: https://developer.android.com/reference/java/util/concurrent/Executor.html,
conn: https://developer.android.com/reference/android/content/ServiceConnection.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#bindServiceAsUser(android.content.Intent, android.content.ServiceConnection, android.content.Context.BindServiceFlags, android.os.UserHandle)(
service: https://developer.android.com/reference/android/content/Intent.html,
conn: https://developer.android.com/reference/android/content/ServiceConnection.html,
flags: https://developer.android.com/reference/android/content/Context.BindServiceFlags.html,
user: https://developer.android.com/reference/android/os/UserHandle.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#bindServiceAsUser(android.content.Intent, android.content.ServiceConnection, int, android.os.UserHandle)(
service: https://developer.android.com/reference/android/content/Intent.html,
conn: https://developer.android.com/reference/android/content/ServiceConnection.html,
flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
user: https://developer.android.com/reference/android/os/UserHandle.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkCallingOrSelfPermission(java.lang.String)(permission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkCallingOrSelfUriPermission(android.net.Uri, int)(uri: https://developer.android.com/reference/android/net/Uri.html, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkCallingOrSelfUriPermissions(java.util.List&lt;android.net.Uri&gt;, int)(uris: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html<https://developer.android.com/reference/android/net/Uri.html>, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkCallingPermission(java.lang.String)(permission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkCallingUriPermission(android.net.Uri, int)(uri: https://developer.android.com/reference/android/net/Uri.html, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkCallingUriPermissions(java.util.List&lt;android.net.Uri&gt;, int)(uris: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html<https://developer.android.com/reference/android/net/Uri.html>, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkContentUriPermissionFull(android.net.Uri, int, int, int)(uri: https://developer.android.com/reference/android/net/Uri.html, pid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, uid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkPermission(java.lang.String, int, int)(permission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, pid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, uid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkSelfPermission(java.lang.String)(permission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkUriPermission(android.net.Uri, int, int, int)(uri: https://developer.android.com/reference/android/net/Uri.html, pid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, uid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkUriPermission(android.net.Uri, java.lang.String, java.lang.String, int, int, int)(
uri: https://developer.android.com/reference/android/net/Uri.html?,
readPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
writePermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
pid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
uid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#checkUriPermissions(java.util.List&lt;android.net.Uri&gt;, int, int, int)(
uris: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html<https://developer.android.com/reference/android/net/Uri.html>,
pid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
uid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#clearWallpaper()()` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createAttributionContext(java.lang.String)(attributionTag: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?)` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createConfigurationContext(android.content.res.Configuration)(overrideConfiguration: https://developer.android.com/reference/android/content/res/Configuration.html)` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createContext(android.content.ContextParams)(contextParams: https://developer.android.com/reference/android/content/ContextParams.html)` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createContextForSplit(java.lang.String)(splitName: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createDeviceContext(int)(deviceId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createDeviceProtectedStorageContext()()` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createDisplayContext(android.view.Display)(display: https://developer.android.com/reference/android/view/Display.html)` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createPackageContext(java.lang.String, int)(packageName: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createWindowContext(int, android.os.Bundle)(type: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, options: https://developer.android.com/reference/android/os/Bundle.html?)` `https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#createWindowContext(android.view.Display, int, android.os.Bundle)(display: https://developer.android.com/reference/android/view/Display.html, type: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, options: https://developer.android.com/reference/android/os/Bundle.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html>` `https://developer.android.com/reference/android/content/ContextWrapper.html#databaseList()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#deleteDatabase(java.lang.String)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#deleteFile(java.lang.String)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#deleteSharedPreferences(java.lang.String)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#enforceCallingOrSelfPermission(java.lang.String, java.lang.String)(permission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, message: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#enforceCallingOrSelfUriPermission(android.net.Uri, int, java.lang.String)(
uri: https://developer.android.com/reference/android/net/Uri.html,
modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
message: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#enforceCallingPermission(java.lang.String, java.lang.String)(permission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, message: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#enforceCallingUriPermission(android.net.Uri, int, java.lang.String)(uri: https://developer.android.com/reference/android/net/Uri.html, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, message: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#enforcePermission(java.lang.String, int, int, java.lang.String)(permission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, pid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, uid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, message: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#enforceUriPermission(android.net.Uri, int, int, int, java.lang.String)(
uri: https://developer.android.com/reference/android/net/Uri.html,
pid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
uid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
message: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#enforceUriPermission(android.net.Uri, java.lang.String, java.lang.String, int, int, int, java.lang.String)(
uri: https://developer.android.com/reference/android/net/Uri.html?,
readPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
writePermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
pid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
uid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
message: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html>` `https://developer.android.com/reference/android/content/ContextWrapper.html#fileList()()` `https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#getDatabasePath(java.lang.String)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#getDir(java.lang.String, int)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, mode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://developer.android.com/reference/java/io/File.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#getExternalFilesDir(java.lang.String)(type: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/java/io/File.html>` `https://developer.android.com/reference/android/content/ContextWrapper.html#getExternalFilesDirs(java.lang.String)(type: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#getFileStreamPath(java.lang.String)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://developer.android.com/reference/android/content/SharedPreferences.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#getSharedPreferences(java.lang.String, int)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, mode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#getSystemService(java.lang.String)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#getSystemServiceName(java.lang.Class&lt;?&gt;)(serviceClass: https://developer.android.com/reference/java/lang/Class.html<*>)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#grantUriPermission(java.lang.String, android.net.Uri, int)(toPackage: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, uri: https://developer.android.com/reference/android/net/Uri.html, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#moveDatabaseFrom(android.content.Context, java.lang.String)(sourceContext: https://developer.android.com/reference/android/content/Context.html, name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#moveSharedPreferencesFrom(android.content.Context, java.lang.String)(sourceContext: https://developer.android.com/reference/android/content/Context.html, name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://developer.android.com/reference/java/io/FileInputStream.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#openFileInput(java.lang.String)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` `https://developer.android.com/reference/java/io/FileOutputStream.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#openFileOutput(java.lang.String, int)(name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, mode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#openOrCreateDatabase(java.lang.String, int, android.database.sqlite.SQLiteDatabase.CursorFactory)(
name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html,
mode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
factory: https://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.CursorFactory.html
)` `https://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#openOrCreateDatabase(java.lang.String, int, android.database.sqlite.SQLiteDatabase.CursorFactory, android.database.DatabaseErrorHandler)(
name: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html,
mode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
factory: https://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.CursorFactory.html,
errorHandler: https://developer.android.com/reference/android/database/DatabaseErrorHandler.html?
)` `https://developer.android.com/reference/android/graphics/drawable/Drawable.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#peekWallpaper()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#rebindService(android.content.ServiceConnection, android.content.Context.BindServiceFlags)(conn: https://developer.android.com/reference/android/content/ServiceConnection.html, flags: https://developer.android.com/reference/android/content/Context.BindServiceFlags.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#registerComponentCallbacks(android.content.ComponentCallbacks)(callback: https://developer.android.com/reference/android/content/ComponentCallbacks.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#registerDeviceIdChangeListener(java.util.concurrent.Executor, java.util.function.IntConsumer)(executor: https://developer.android.com/reference/java/util/concurrent/Executor.html, listener: https://developer.android.com/reference/java/util/function/IntConsumer.html)` `https://developer.android.com/reference/android/content/Intent.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter)(receiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?, filter: https://developer.android.com/reference/android/content/IntentFilter.html)` `https://developer.android.com/reference/android/content/Intent.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, int)(
receiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
filter: https://developer.android.com/reference/android/content/IntentFilter.html,
flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html
)` `https://developer.android.com/reference/android/content/Intent.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, java.lang.String, android.os.Handler)(
receiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
filter: https://developer.android.com/reference/android/content/IntentFilter.html,
broadcastPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?
)` `https://developer.android.com/reference/android/content/Intent.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter, java.lang.String, android.os.Handler, int)(
receiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
filter: https://developer.android.com/reference/android/content/IntentFilter.html,
broadcastPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?,
flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#removeStickyBroadcast(android.content.Intent)(intent: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#removeStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle)(intent: https://developer.android.com/reference/android/content/Intent.html, user: https://developer.android.com/reference/android/os/UserHandle.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#revokeSelfPermissionsOnKill(java.util.Collection&lt;java.lang.String&gt;)(permissions: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-collection/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html>)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#revokeUriPermission(android.net.Uri, int)(uri: https://developer.android.com/reference/android/net/Uri.html, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#revokeUriPermission(java.lang.String, android.net.Uri, int)(targetPackage: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, uri: https://developer.android.com/reference/android/net/Uri.html, modeFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendBroadcast(android.content.Intent)(intent: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendBroadcast(android.content.Intent, java.lang.String)(intent: https://developer.android.com/reference/android/content/Intent.html, receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendBroadcast(android.content.Intent, java.lang.String, android.os.Bundle)(intent: https://developer.android.com/reference/android/content/Intent.html, receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?, options: https://developer.android.com/reference/android/os/Bundle.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendBroadcastAsUser(android.content.Intent, android.os.UserHandle)(intent: https://developer.android.com/reference/android/content/Intent.html, user: https://developer.android.com/reference/android/os/UserHandle.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String)(
intent: https://developer.android.com/reference/android/content/Intent.html,
user: https://developer.android.com/reference/android/os/UserHandle.html,
receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendOrderedBroadcast(android.content.Intent, java.lang.String)(intent: https://developer.android.com/reference/android/content/Intent.html, receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendOrderedBroadcast(android.content.Intent, java.lang.String, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/Intent.html,
receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
options: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendOrderedBroadcast(android.content.Intent, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/Intent.html,
receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
resultReceiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?,
initialCode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
initialData: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
initialExtras: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendOrderedBroadcast(android.content.Intent, java.lang.String, android.os.Bundle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/Intent.html,
receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
options: https://developer.android.com/reference/android/os/Bundle.html?,
resultReceiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?,
initialCode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
initialData: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
initialExtras: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendOrderedBroadcast(android.content.Intent, java.lang.String, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/Intent.html,
receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
receiverAppOp: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
resultReceiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?,
initialCode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
initialData: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
initialExtras: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendOrderedBroadcast(android.content.Intent, int, java.lang.String, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, java.lang.String, android.os.Bundle, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/Intent.html,
initialCode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
receiverAppOp: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
resultReceiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?,
initialData: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
initialExtras: https://developer.android.com/reference/android/os/Bundle.html?,
options: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, java.lang.String, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/Intent.html,
user: https://developer.android.com/reference/android/os/UserHandle.html,
receiverPermission: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
resultReceiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?,
initialCode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
initialData: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
initialExtras: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendStickyBroadcast(android.content.Intent)(intent: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendStickyBroadcast(android.content.Intent, android.os.Bundle)(intent: https://developer.android.com/reference/android/content/Intent.html, options: https://developer.android.com/reference/android/os/Bundle.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendStickyBroadcastAsUser(android.content.Intent, android.os.UserHandle)(intent: https://developer.android.com/reference/android/content/Intent.html, user: https://developer.android.com/reference/android/os/UserHandle.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendStickyOrderedBroadcast(android.content.Intent, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/Intent.html,
resultReceiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?,
initialCode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
initialData: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
initialExtras: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#sendStickyOrderedBroadcastAsUser(android.content.Intent, android.os.UserHandle, android.content.BroadcastReceiver, android.os.Handler, int, java.lang.String, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/Intent.html,
user: https://developer.android.com/reference/android/os/UserHandle.html,
resultReceiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html?,
scheduler: https://developer.android.com/reference/android/os/Handler.html?,
initialCode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
initialData: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
initialExtras: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#setTheme(int)(resid: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#setWallpaper(android.graphics.Bitmap)(bitmap: https://developer.android.com/reference/android/graphics/Bitmap.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#setWallpaper(java.io.InputStream)(data: https://developer.android.com/reference/java/io/InputStream.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#startActivities(android.content.Intent[])(intents: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/android/content/Intent.html>)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#startActivities(android.content.Intent[], android.os.Bundle)(intents: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/android/content/Intent.html>, options: https://developer.android.com/reference/android/os/Bundle.html?)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#startActivity(android.content.Intent)(intent: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#startActivity(android.content.Intent, android.os.Bundle)(intent: https://developer.android.com/reference/android/content/Intent.html, options: https://developer.android.com/reference/android/os/Bundle.html?)` `https://developer.android.com/reference/android/content/ComponentName.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#startForegroundService(android.content.Intent)(service: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#startInstrumentation(android.content.ComponentName, java.lang.String, android.os.Bundle)(
className: https://developer.android.com/reference/android/content/ComponentName.html,
profileFile: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?,
arguments: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int)(
intent: https://developer.android.com/reference/android/content/IntentSender.html,
fillInIntent: https://developer.android.com/reference/android/content/Intent.html?,
flagsMask: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
flagsValues: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
extraFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#startIntentSender(android.content.IntentSender, android.content.Intent, int, int, int, android.os.Bundle)(
intent: https://developer.android.com/reference/android/content/IntentSender.html,
fillInIntent: https://developer.android.com/reference/android/content/Intent.html?,
flagsMask: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
flagsValues: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
extraFlags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
options: https://developer.android.com/reference/android/os/Bundle.html?
)` `https://developer.android.com/reference/android/content/ComponentName.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#startService(android.content.Intent)(service: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#stopService(android.content.Intent)(name: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#unbindService(android.content.ServiceConnection)(conn: https://developer.android.com/reference/android/content/ServiceConnection.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#unregisterComponentCallbacks(android.content.ComponentCallbacks)(callback: https://developer.android.com/reference/android/content/ComponentCallbacks.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#unregisterDeviceIdChangeListener(java.util.function.IntConsumer)(listener: https://developer.android.com/reference/java/util/function/IntConsumer.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#unregisterReceiver(android.content.BroadcastReceiver)(receiver: https://developer.android.com/reference/android/content/BroadcastReceiver.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#updateServiceBindings(java.util.Collection&lt;android.content.Context.UpdateBindingParams&gt;)(
params: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-collection/index.html<https://developer.android.com/reference/android/content/Context.UpdateBindingParams.html>
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#updateServiceGroup(android.content.ServiceConnection, int, int)(conn: https://developer.android.com/reference/android/content/ServiceConnection.html, group: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, importance: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` From [android.service.credentials.CredentialProviderService](https://developer.android.com/reference/android/service/credentials/CredentialProviderService.html) `https://developer.android.com/reference/android/os/IBinder.html` `https://developer.android.com/reference/android/service/credentials/CredentialProviderService.html#onBind(android.content.Intent)(intent: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/service/credentials/CredentialProviderService.html#onCreate()()` From [android.app.Service](https://developer.android.com/reference/android/app/Service.html) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#attachBaseContext(android.content.Context)(newBase: https://developer.android.com/reference/android/content/Context.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[])(fd: https://developer.android.com/reference/java/io/FileDescriptor.html, writer: https://developer.android.com/reference/java/io/PrintWriter.html, args: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html>)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onConfigurationChanged(android.content.res.Configuration)(newConfig: https://developer.android.com/reference/android/content/res/Configuration.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onDestroy()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onLowMemory()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onRebind(android.content.Intent)(intent: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onStart(android.content.Intent, int)(intent: https://developer.android.com/reference/android/content/Intent.html, startId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/app/Service.html#onStartCommand(android.content.Intent, int, int)(intent: https://developer.android.com/reference/android/content/Intent.html, flags: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, startId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onTaskRemoved(android.content.Intent)(rootIntent: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onTimeout(int)(startId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onTimeout(int, int)(startId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, fgsType: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#onTrimMemory(int)(level: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/app/Service.html#onUnbind(android.content.Intent)(intent: https://developer.android.com/reference/android/content/Intent.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#startForeground(int, android.app.Notification)(id: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, notification: https://developer.android.com/reference/android/app/Notification.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#startForeground(int, android.app.Notification, int)(
id: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html,
notification: https://developer.android.com/reference/android/app/Notification.html,
foregroundServiceType: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html
)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#stopForeground(int)(notificationBehavior: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#stopForeground(boolean)(removeNotification: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#stopSelf()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/android/app/Service.html#stopSelf(int)(startId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/app/Service.html#stopSelfResult(int)(startId: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)`

### Inherited properties

From [android.content.Context](https://developer.android.com/reference/android/content/Context.html) `open https://developer.android.com/reference/android/content/Context.BindServiceFlags.html` `https://developer.android.com/reference/android/content/Context.html#updateableFlags` From [android.content.ContextWrapper](https://developer.android.com/reference/android/content/ContextWrapper.html) `open https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#applicationContext` `open https://developer.android.com/reference/android/content/pm/ApplicationInfo.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#applicationInfo` `open https://developer.android.com/reference/android/content/res/AssetManager.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#assets` `open https://developer.android.com/reference/android/content/AttributionSource.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#attributionSource` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#attributionTag` `open https://developer.android.com/reference/android/content/Context.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#baseContext` `open https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#cacheDir` `open https://developer.android.com/reference/java/lang/ClassLoader.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#classLoader` `open https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#codeCacheDir` `open https://developer.android.com/reference/android/content/ContentResolver.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#contentResolver` `open https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#dataDir` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#deviceId` `open https://developer.android.com/reference/android/view/Display.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#display` `open https://developer.android.com/reference/java/io/File.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#externalCacheDir` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/java/io/File.html>` `https://developer.android.com/reference/android/content/ContextWrapper.html#externalCacheDirs` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/java/io/File.html>` `https://developer.android.com/reference/android/content/ContextWrapper.html#externalMediaDirs` `open https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#filesDir` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#isDeviceProtectedStorage` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#isRestricted` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#isUiContext` `open https://developer.android.com/reference/java/util/concurrent/Executor.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#mainExecutor` `open https://developer.android.com/reference/android/os/Looper.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#mainLooper` `open https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#noBackupFilesDir` `open https://developer.android.com/reference/java/io/File.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#obbDir` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/java/io/File.html>` `https://developer.android.com/reference/android/content/ContextWrapper.html#obbDirs` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#opPackageName` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#packageCodePath` `open https://developer.android.com/reference/android/content/pm/PackageManager.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#packageManager` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#packageName` `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#packageResourcePath` `open https://developer.android.com/reference/android/content/ContextParams.html?` `https://developer.android.com/reference/android/content/ContextWrapper.html#params` `open https://developer.android.com/reference/android/content/res/Resources.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#resources` `open https://developer.android.com/reference/android/content/res/Resources.Theme.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#theme` `open https://developer.android.com/reference/android/graphics/drawable/Drawable.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#wallpaper`

**This property is deprecated.** Deprecated in Java
`open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#wallpaperDesiredMinimumHeight`

**This property is deprecated.** Deprecated in Java
`open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/content/ContextWrapper.html#wallpaperDesiredMinimumWidth`

**This property is deprecated.** Deprecated in Java
From [android.app.Service](https://developer.android.com/reference/android/app/Service.html) `https://developer.android.com/reference/android/app/Application.html` `https://developer.android.com/reference/android/app/Service.html#application` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/android/app/Service.html#foregroundServiceType`

## Public constructors

### CredentialProviderService

Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/credentials#1.2.0)

```
CredentialProviderService()
```

## Public functions

### onBeginCreateCredential

Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/credentials#1.2.0)

```
final fun onBeginCreateCredential(
    request: BeginCreateCredentialRequest,
    cancellationSignal: CancellationSignal,
    callback: OutcomeReceiver<BeginCreateCredentialResponse, CreateCredentialException>
): Unit
```

### onBeginCreateCredentialRequest

Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/credentials#1.2.0)

```
abstract fun onBeginCreateCredentialRequest(
    request: BeginCreateCredentialRequest,
    cancellationSignal: CancellationSignal,
    callback: OutcomeReceiver<BeginCreateCredentialResponse, CreateCredentialException>
): Unit
```

Called by the Android System in response to a client app calling `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialManager#createCredential(android.content.Context,androidx.credentials.CreateCredentialRequest)`, to create/save a credential with a credential provider installed on the device.

Credential provider services must extend this method in order to handle a `https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginCreateCredentialRequest` request. Once processed, the service must call one of the `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#onBeginCreateCredentialRequest(androidx.credentials.provider.BeginCreateCredentialRequest,android.os.CancellationSignal,android.os.OutcomeReceiver)` methods to notify the result of the request.

This API call is referred to as the **query phase** of the original create request from the client app. In this phase, provider must process the request parameters in the `https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginCreateCredentialRequest` and return a list of `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CreateEntry` whereby every entry represents an account/group where the user will be storing the credential. Each `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CreateEntry` must contain a `https://developer.android.com/reference/android/app/PendingIntent.html` that will lead the user to an activity in the credential provider's app that will complete the actual credential creation.

When user selects one of the `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CreateEntry`, the associated `https://developer.android.com/reference/android/app/PendingIntent.html` will be invoked and the provider will receive the complete request as part of the extras in the resulting activity. Provider must retrieve the request through `https://developer.android.com/reference/kotlin/androidx/credentials/provider/PendingIntentHandler#retrieveProviderCreateCredentialRequest(android.content.Intent)`. Once the activity is complete, and the credential is created, provider must set back the response through `https://developer.android.com/reference/kotlin/androidx/credentials/provider/PendingIntentHandler#setCreateCredentialResponse(android.content.Intent,androidx.credentials.CreateCredentialResponse)`.

| Parameters |
|---|---|
| `request: https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginCreateCredentialRequest` | the `https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginCreateCredentialRequest` to handle See `https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginCreateCredentialResponse` for the response to be returned |
| `cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html` | signal for observing cancellation requests. The system will use this to notify you that the result is no longer needed and you should stop handling it in order to save your resources |
| `callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginCreateCredentialResponse, https://developer.android.com/reference/kotlin/androidx/credentials/exceptions/CreateCredentialException>` | the callback object to be used to notify the response or error |

### onBeginGetCredential

Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/credentials#1.2.0)

```
final fun onBeginGetCredential(
    request: BeginGetCredentialRequest,
    cancellationSignal: CancellationSignal,
    callback: OutcomeReceiver<BeginGetCredentialResponse, GetCredentialException>
): Unit
```

### onBeginGetCredentialRequest

Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/credentials#1.2.0)

```
abstract fun onBeginGetCredentialRequest(
    request: BeginGetCredentialRequest,
    cancellationSignal: CancellationSignal,
    callback: OutcomeReceiver<BeginGetCredentialResponse, GetCredentialException>
): Unit
```

Called by the Android System in response to a client app calling `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialManager#getCredential(android.content.Context,androidx.credentials.GetCredentialRequest)`, to get a credential sourced from a credential provider installed on the device.

Credential provider services must extend this method in order to handle a `https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginGetCredentialRequest` request. Once processed, the service must call one of the `https://developer.android.com/reference/kotlin/androidx/credentials/provider/CredentialProviderService#onBeginGetCredentialRequest(androidx.credentials.provider.BeginGetCredentialRequest,android.os.CancellationSignal,android.os.OutcomeReceiver)` methods to notify the result of the request.

This API call is referred to as the **query phase** of the original get request from the client app. In this phase, provider must go over all the `https://developer.android.com/reference/android/service/credentials/BeginGetCredentialOption.html`, and add corresponding a `https://developer.android.com/reference/android/service/credentials/CredentialEntry.html` to the `https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginGetCredentialResponse`. Each `https://developer.android.com/reference/android/service/credentials/CredentialEntry.html` should contain meta-data to be shown on the selector UI. In addition, each `https://developer.android.com/reference/android/service/credentials/CredentialEntry.html` must contain a `https://developer.android.com/reference/android/app/PendingIntent.html`. Optionally, providers can also add `https://developer.android.com/reference/kotlin/androidx/credentials/provider/Action` entries for any non-credential related actions that they want to offer to the users e.g. opening app, managing credentials etc.

When user selects one of the `https://developer.android.com/reference/android/service/credentials/CredentialEntry.html`, **final phase** of the original client's get-request flow starts. The Android System attached the complete `https://developer.android.com/reference/kotlin/androidx/credentials/provider/ProviderGetCredentialRequest` to an intent extra of the activity that is started by the pending intent. The request must be retrieved through `https://developer.android.com/reference/kotlin/androidx/credentials/provider/PendingIntentHandler#retrieveProviderGetCredentialRequest(android.content.Intent)`. This final request will only contain a single `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialOption` that contains the parameters of the credential the user has requested. The provider service must retrieve this credential and return through `https://developer.android.com/reference/kotlin/androidx/credentials/provider/PendingIntentHandler#setGetCredentialResponse(android.content.Intent,androidx.credentials.GetCredentialResponse,androidx.credentials.provider.ProviderGetCredentialRequest)`.

**Handling locked provider apps** If the provider app is locked, and the provider cannot provide any meta-data based `https://developer.android.com/reference/android/service/credentials/CredentialEntry.html`, provider must set an `https://developer.android.com/reference/kotlin/androidx/credentials/provider/AuthenticationAction` on the `https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginGetCredentialResponse`. The `https://developer.android.com/reference/android/app/PendingIntent.html` set on this entry must lead the user to an \>unlock activity. Once unlocked, the provider must retrieve all credentials, and set the list of `https://developer.android.com/reference/android/service/credentials/CredentialEntry.html` and the list of optional `https://developer.android.com/reference/kotlin/androidx/credentials/provider/Action` as a result of the \>unlock activity through `https://developer.android.com/reference/kotlin/androidx/credentials/provider/PendingIntentHandler#setBeginGetCredentialResponse(android.content.Intent,androidx.credentials.provider.BeginGetCredentialResponse)`.

| Parameters |
|---|---|
| `request: https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginGetCredentialRequest` | the `https://developer.android.com/reference/kotlin/androidx/credentials/provider/ProviderGetCredentialRequest` to handle See `https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginGetCredentialResponse` for the response to be returned |
| `cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html` | signal for observing cancellation requests. The system will use this to notify you that the result is no longer needed and you should stop handling it in order to save your resources |
| `callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/kotlin/androidx/credentials/provider/BeginGetCredentialResponse, https://developer.android.com/reference/kotlin/androidx/credentials/exceptions/GetCredentialException>` | the callback object to be used to notify the response or error |

| See also |
|---|---|
| `https://developer.android.com/reference/android/service/credentials/CredentialEntry.html` | for how an entry representing a credential must be built |
| `https://developer.android.com/reference/kotlin/androidx/credentials/provider/Action` | for how a non-credential related action should be built |
| `https://developer.android.com/reference/kotlin/androidx/credentials/provider/AuthenticationAction` | for how an entry that navigates the user to an unlock flow can be built |

### onClearCredentialState

Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/credentials#1.2.0)

```
final fun onClearCredentialState(
    request: ClearCredentialStateRequest,
    cancellationSignal: CancellationSignal,
    callback: OutcomeReceiver<Void, ClearCredentialStateException>
): Unit
```

### onClearCredentialStateRequest

Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/credentials#1.2.0)

```
abstract fun onClearCredentialStateRequest(
    request: ProviderClearCredentialStateRequest,
    cancellationSignal: CancellationSignal,
    callback: OutcomeReceiver<Void?, ClearCredentialException>
): Unit
```

Called by the Android System in response to a client app calling `https://developer.android.com/reference/kotlin/androidx/credentials/CredentialManager#clearCredentialState(androidx.credentials.ClearCredentialStateRequest)`. A client app typically calls this API on instances like sign-out when the intention is that the providers clear any state that they may have maintained for the given user.

You should invoked this api after your user signs out of your app to notify all credential providers that any stored credential session for the given app should be cleared.

An example scenario of a state that is maintained and is expected to be cleared on this call, is when an active credential session is being stored to limit sign-in options in the result of subsequent get-request calls. When a user explicitly signs out of the app, the next time, the client app may want their users to see all options and hence will call this API first to make sure credential providers can clear the state maintained previously.

| Parameters |
|---|---|
| `request: https://developer.android.com/reference/kotlin/androidx/credentials/provider/ProviderClearCredentialStateRequest` | the request for the credential provider to handle |
| `cancellationSignal: https://developer.android.com/reference/android/os/CancellationSignal.html` | signal for observing cancellation requests. The system will use this to notify you that the result is no longer needed and you should stop handling it in order to save your resources |
| `callback: https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/java/lang/Void.html?, https://developer.android.com/reference/kotlin/androidx/credentials/exceptions/ClearCredentialException>` | the callback object to be used to notify the response or error |