# TrustedWebActivityIntent

Artifact: [androidx.browser:browser](https://developer.android.com/jetpack/androidx/releases/browser) [View Source](https://cs.android.com/search?q=file:androidx/browser/trusted/TrustedWebActivityIntent.java+class:androidx.browser.trusted.TrustedWebActivityIntent) Added in [1.2.0](https://developer.android.com/jetpack/androidx/releases/browser#1.2.0)

*** ** * ** ***


```
public final class TrustedWebActivityIntent
```

<br />

*** ** * ** ***

Holds an `https://developer.android.com/reference/android/content/Intent.html` and other data necessary to start a Trusted Web Activity.

## Summary

| ### Public methods |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityDisplayMode>` | `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityIntent#getDisplayOverrideList()()` Used by the web app manifest to specify the fallback order for display modes. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/androidx/browser/trusted/FileHandlingData` | `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityIntent#getFileHandlingData()()` |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/content/Intent.html` | `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityIntent#getIntent()()` Returns the held `https://developer.android.com/reference/android/content/Intent.html`. |
| `int` | `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityIntent#getLaunchHandlerClientMode()()` Used for Launch Handler API to provide client mode to a browser. |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/android/net/Uri.html` | `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityIntent#getOriginalLaunchUrl()()` Used by Protocol Handlers to provide context for the browser. |
| `void` | `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityIntent#launchTrustedWebActivity(android.content.Context)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/content/Context.html context)` Launches a Trusted Web Activity. |

## Public methods

### getDisplayOverrideList

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

```
public @NonNull List<TrustedWebActivityDisplayMode> getDisplayOverrideList()
```

Used by the web app manifest to specify the fallback order for display modes. This can be changed using `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityIntentBuilder#setDisplayOverrideList(java.util.List<androidx.browser.trusted.TrustedWebActivityDisplayMode>)`.

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityDisplayMode>` | A list of `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityDisplayMode` that represents the fallback order of display modes. |

### getFileHandlingData

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

```
public @Nullable FileHandlingData getFileHandlingData()
```

### getIntent

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

```
public @NonNull Intent getIntent()
```

Returns the held `https://developer.android.com/reference/android/content/Intent.html`. For launching a Trusted Web Activity prefer using `https://developer.android.com/reference/androidx/browser/trusted/TrustedWebActivityIntent#launchTrustedWebActivity(android.content.Context)`.

### getLaunchHandlerClientMode

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

```
public int getLaunchHandlerClientMode()
```

Used for Launch Handler API to provide client mode to a browser. {@see https://developer.mozilla.org/en-US/docs/Web/API/Launch_Handler_API}

| Returns |
|---|---|
| `int` | An integer that represents Launch Handler API client mode. |

### getOriginalLaunchUrl

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

```
public @Nullable Uri getOriginalLaunchUrl()
```

Used by Protocol Handlers to provide context for the browser. When a custom data scheme link (e.g. web+coffee://latte) is being processed by a WebAPK/TWA, it will get replaced with an actual http/https location (e.g. https://coffee.com/?type=latte) and that URL gets sent to the browser. This extra will then store the original link in case the browser needs different logic for Protocol Handlers and regular links. {@see https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Manifest/Reference/protocol_handlers}

| Returns |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/android/net/Uri.html` | The original URL before being processed by a Protocol Handler, or null if this was never a custom data scheme link. |

### launchTrustedWebActivity

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

```
public void launchTrustedWebActivity(@NonNull Context context)
```

Launches a Trusted Web Activity.