# ShareTarget

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

*** ** * ** ***


```
class ShareTarget
```

<br />

*** ** * ** ***

Describes a Web Share Target associated with a Trusted Web Activity. The structure of a ShareTarget object follows the specification \[1\] of the "share_target" object within web manifest json, with the following exceptions: - The "action" field specifies the full URL of the Share Target, and not only the path. - There is no "url" field in the "params" object, since urls are not supplied separately from text in Android's ACTION_SEND and ACTION_SEND_MULTIPLE intents. \[1\] https://wicg.github.io/web-share-target/level-2/

## Summary

| ### Nested types |
|---|
| `class https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget.FileFormField` Defines a form field for sharing files. |
| `class https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget.Params` Contains parameter names to be used for the data being shared. |

| ### Constants |
|---|---|
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#ENCODING_TYPE_MULTIPART() = "multipart/form-data"` An encoding type to be used with POST requests (see `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#encodingType()`) corresponding to `multipart/form-data` of the HTTP POST standard \[1\]. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#ENCODING_TYPE_URL_ENCODED() = "application/x-www-form-urlencoded"` An encoding type to be used with POST requests (see `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#encodingType()`) corresponding to `application/x-www-form-urlencoded` of the HTTP POST standard \[1\]. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#KEY_ACTION() = "androidx.browser.trusted.sharing.KEY_ACTION"` Bundle key for `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#action()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#KEY_ENCTYPE() = "androidx.browser.trusted.sharing.KEY_ENCTYPE"` Bundle key for `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#encodingType()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#KEY_METHOD() = "androidx.browser.trusted.sharing.KEY_METHOD"` Bundle key for `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#method()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#KEY_PARAMS() = "androidx.browser.trusted.sharing.KEY_PARAMS"` Bundle key for `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#params()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#METHOD_GET() = "GET"` See `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#method()`. |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#METHOD_POST() = "POST"` See `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#method()`. |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#ShareTarget(java.lang.String,java.lang.String,java.lang.String,androidx.browser.trusted.sharing.ShareTarget.Params)( action: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, method: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?, encodingType: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?, params: https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget.Params )` Creates a `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget` with the given parameters. |

| ### Public functions |
|---|---|
| `java-static https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget?` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#fromBundle(android.os.Bundle)(bundle: https://developer.android.com/reference/android/os/Bundle.html)` Unpacks the object from a `https://developer.android.com/reference/android/os/Bundle.html`. |
| `https://developer.android.com/reference/android/os/Bundle.html` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#toBundle()()` Packs the object into a `https://developer.android.com/reference/android/os/Bundle.html`. |

| ### Public properties |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#action()` URL of the Web Share Target. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#encodingType()` Specifies how the shared data should be encoded in the body of a POST request. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#method()` HTTP request method for the Web Share Target. |
| `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget.Params` | `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#params()` Contains the parameter names, see `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget.Params`. |

## Constants

### ENCODING_TYPE_MULTIPART

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

```
const val ENCODING_TYPE_MULTIPART = "multipart/form-data": String!
```

An encoding type to be used with POST requests (see `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#encodingType()`) corresponding to `multipart/form-data` of the HTTP POST standard \[1\].

### ENCODING_TYPE_URL_ENCODED

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

```
const val ENCODING_TYPE_URL_ENCODED = "application/x-www-form-urlencoded": String!
```

An encoding type to be used with POST requests (see `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#encodingType()`) corresponding to `application/x-www-form-urlencoded` of the HTTP POST standard \[1\]. \[1\]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST

### KEY_ACTION

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

```
const val KEY_ACTION = "androidx.browser.trusted.sharing.KEY_ACTION": String!
```

Bundle key for `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#action()`.

### KEY_ENCTYPE

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

```
const val KEY_ENCTYPE = "androidx.browser.trusted.sharing.KEY_ENCTYPE": String!
```

Bundle key for `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#encodingType()`.

### KEY_METHOD

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

```
const val KEY_METHOD = "androidx.browser.trusted.sharing.KEY_METHOD": String!
```

Bundle key for `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#method()`.

### KEY_PARAMS

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

```
const val KEY_PARAMS = "androidx.browser.trusted.sharing.KEY_PARAMS": String!
```

Bundle key for `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#params()`.

### METHOD_GET

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

```
const val METHOD_GET = "GET": String!
```

See `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#method()`.

### METHOD_POST

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

```
const val METHOD_POST = "POST": String!
```

See `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#method()`.

## Public constructors

### ShareTarget

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

```
ShareTarget(
    action: String,
    method: String?,
    encodingType: String?,
    params: ShareTarget.Params
)
```

Creates a `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget` with the given parameters.

| Parameters |
|---|---|
| `action: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | The `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#action()`. |
| `method: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | The `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#method()`. |
| `encodingType: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html?` | The `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#encodingType()`. |
| `params: https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget.Params` | The `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#params()`. |

## Public functions

### fromBundle

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

```
java-static fun fromBundle(bundle: Bundle): ShareTarget?
```

Unpacks the object from a `https://developer.android.com/reference/android/os/Bundle.html`.

### toBundle

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

```
fun toBundle(): Bundle
```

Packs the object into a `https://developer.android.com/reference/android/os/Bundle.html`.

## Public properties

### action

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

```
val action: String
```

URL of the Web Share Target. Must belong to an origin associated with the Trusted Web Activity. For example, assuming the origin is "https://mypwa.com", the action could be "https://mypwa.com/share.html".

### encodingType

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

```
val encodingType: String?
```

Specifies how the shared data should be encoded in the body of a POST request. Must be `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#ENCODING_TYPE_MULTIPART()` or `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#ENCODING_TYPE_URL_ENCODED()`. Default is `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#ENCODING_TYPE_URL_ENCODED()`.

### method

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

```
val method: String?
```

HTTP request method for the Web Share Target. Must be `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#METHOD_GET()` or `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#METHOD_POST()`. Default is `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget#METHOD_GET()`.

### params

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

```
val params: ShareTarget.Params
```

Contains the parameter names, see `https://developer.android.com/reference/kotlin/androidx/browser/trusted/sharing/ShareTarget.Params`.