ShareTarget

public final class ShareTarget


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

public final class ShareTarget.FileFormField

Defines a form field for sharing files.

public class ShareTarget.Params

Contains parameter names to be used for the data being shared.

Constants

static final String
ENCODING_TYPE_MULTIPART = "multipart/form-data"

An encoding type to be used with POST requests (see encodingType) corresponding to multipart/form-data of the HTTP POST standard [1].

static final String
ENCODING_TYPE_URL_ENCODED = "application/x-www-form-urlencoded"

An encoding type to be used with POST requests (see encodingType) corresponding to application/x-www-form-urlencoded of the HTTP POST standard [1].

static final String
KEY_ACTION = "androidx.browser.trusted.sharing.KEY_ACTION"

Bundle key for action.

static final String
KEY_ENCTYPE = "androidx.browser.trusted.sharing.KEY_ENCTYPE"

Bundle key for encodingType.

static final String
KEY_METHOD = "androidx.browser.trusted.sharing.KEY_METHOD"

Bundle key for method.

static final String
KEY_PARAMS = "androidx.browser.trusted.sharing.KEY_PARAMS"

Bundle key for params.

static final String
METHOD_GET = "GET"

See method.

static final String
METHOD_POST = "POST"

See method.

Public fields

final @NonNull String

URL of the Web Share Target.

final @Nullable String

Specifies how the shared data should be encoded in the body of a POST request.

final @Nullable String

HTTP request method for the Web Share Target.

final @NonNull ShareTarget.Params

Contains the parameter names, see Params.

Public constructors

ShareTarget(
    @NonNull String action,
    @Nullable String method,
    @Nullable String encodingType,
    @NonNull ShareTarget.Params params
)

Creates a ShareTarget with the given parameters.

Public methods

static @Nullable ShareTarget

Unpacks the object from a Bundle.

@NonNull Bundle

Packs the object into a Bundle.

Constants

ENCODING_TYPE_MULTIPART

Added in 1.2.0
public static final String ENCODING_TYPE_MULTIPART = "multipart/form-data"

An encoding type to be used with POST requests (see encodingType) corresponding to multipart/form-data of the HTTP POST standard [1].

ENCODING_TYPE_URL_ENCODED

Added in 1.2.0
public static final String ENCODING_TYPE_URL_ENCODED = "application/x-www-form-urlencoded"

An encoding type to be used with POST requests (see 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
public static final String KEY_ACTION = "androidx.browser.trusted.sharing.KEY_ACTION"

Bundle key for action.

KEY_ENCTYPE

Added in 1.2.0
public static final String KEY_ENCTYPE = "androidx.browser.trusted.sharing.KEY_ENCTYPE"

Bundle key for encodingType.

KEY_METHOD

Added in 1.2.0
public static final String KEY_METHOD = "androidx.browser.trusted.sharing.KEY_METHOD"

Bundle key for method.

KEY_PARAMS

Added in 1.2.0
public static final String KEY_PARAMS = "androidx.browser.trusted.sharing.KEY_PARAMS"

Bundle key for params.

METHOD_GET

Added in 1.2.0
public static final String METHOD_GET = "GET"

See method.

METHOD_POST

Added in 1.2.0
public static final String METHOD_POST = "POST"

See method.

Public fields

action

Added in 1.2.0
public final @NonNull String action

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
public final @Nullable String encodingType

Specifies how the shared data should be encoded in the body of a POST request. Must be ENCODING_TYPE_MULTIPART or ENCODING_TYPE_URL_ENCODED. Default is ENCODING_TYPE_URL_ENCODED.

method

Added in 1.2.0
public final @Nullable String method

HTTP request method for the Web Share Target. Must be METHOD_GET or METHOD_POST. Default is METHOD_GET.

params

Added in 1.2.0
public final @NonNull ShareTarget.Params params

Contains the parameter names, see Params.

Public constructors

ShareTarget

Added in 1.2.0
public ShareTarget(
    @NonNull String action,
    @Nullable String method,
    @Nullable String encodingType,
    @NonNull ShareTarget.Params params
)

Creates a ShareTarget with the given parameters.

Parameters
@NonNull String action

The action.

@Nullable String method

The method.

@Nullable String encodingType

The encodingType.

@NonNull ShareTarget.Params params

The params.

Public methods

fromBundle

Added in 1.2.0
public static @Nullable ShareTarget fromBundle(@NonNull Bundle bundle)

Unpacks the object from a Bundle.

toBundle

Added in 1.2.0
public @NonNull Bundle toBundle()

Packs the object into a Bundle.