Google is committed to advancing racial equity for Black communities. See how.

IntentBuilder

class IntentBuilder
kotlin.Any
   ↳ androidx.core.app.ShareCompat.IntentBuilder

IntentBuilder is a helper for constructing Intent#ACTION_SEND and Intent#ACTION_SEND_MULTIPLE sharing intents and starting activities to share content. The ComponentName and package name of the calling activity will be included.

Summary

Public constructors
<init>(@NonNull launchingContext: Context)

Create a new IntentBuilder for launching a sharing action from launchingContext.

Public methods
open ShareCompat.IntentBuilder
addEmailBcc(@NonNull address: String)

Add an email address to be used in the "bcc" field of the final Intent.

open ShareCompat.IntentBuilder
addEmailBcc(@NonNull addresses: Array<String!>)

Add an array of email addresses to be used in the "bcc" field of the final Intent.

open ShareCompat.IntentBuilder
addEmailCc(@NonNull address: String)

Add an email address to be used in the "cc" field of the final Intent.

open ShareCompat.IntentBuilder
addEmailCc(@NonNull addresses: Array<String!>)

Add an array of email addresses to be used in the "cc" field of the final Intent.

open ShareCompat.IntentBuilder
addEmailTo(@NonNull address: String)

Add an email address to be used in the "to" field of the final Intent.

open ShareCompat.IntentBuilder
addEmailTo(@NonNull addresses: Array<String!>)

Add an array of email addresses to be used in the "to" field of the final Intent.

open ShareCompat.IntentBuilder
addStream(@NonNull streamUri: Uri)

Add a stream URI to the data that should be shared.

open Intent

Create an Intent that will launch the standard Android activity chooser, allowing the user to pick what activity/app on the system should handle the share.

open static ShareCompat.IntentBuilder
from(@NonNull launchingActivity: Activity)

Create a new IntentBuilder for launching a sharing action from launchingActivity.

open Intent

Retrieve the Intent as configured so far by the IntentBuilder.

open ShareCompat.IntentBuilder
setChooserTitle(@Nullable title: CharSequence?)

Set the title that will be used for the activity chooser for this share.

open ShareCompat.IntentBuilder
setChooserTitle(@StringRes resId: Int)

Set the title that will be used for the activity chooser for this share.

open ShareCompat.IntentBuilder
setEmailBcc(@Nullable addresses: Array<String!>?)

Set an array of email addresses to BCC on this share.

open ShareCompat.IntentBuilder
setEmailCc(@Nullable addresses: Array<String!>?)

Set an array of email addresses to CC on this share.

open ShareCompat.IntentBuilder
setEmailTo(@Nullable addresses: Array<String!>?)

Set an array of email addresses as recipients of this share.

open ShareCompat.IntentBuilder
setHtmlText(@Nullable htmlText: String?)

Set an HTML string to be sent as part of the share.

open ShareCompat.IntentBuilder
setStream(@Nullable streamUri: Uri?)

Set a stream URI to the data that should be shared.

open ShareCompat.IntentBuilder
setSubject(@Nullable subject: String?)

Set a subject heading for this share; useful for sharing via email.

open ShareCompat.IntentBuilder
setText(@Nullable text: CharSequence?)

Set the literal text data to be sent as part of the share.

open ShareCompat.IntentBuilder
setType(@Nullable mimeType: String?)

Set the type of data being shared

open Unit

Start a chooser activity for the current share intent.

Public constructors

<init>

IntentBuilder(@NonNull launchingContext: Context)

Create a new IntentBuilder for launching a sharing action from launchingContext.

Note that builders that are not constructed with an Activity context (or a wrapped activity context) will not set the calling activity on the returned intent.

Parameters
launchingContext Context: Context that the share will be launched from

Public methods

addEmailBcc

@NonNull open fun addEmailBcc(@NonNull address: String): ShareCompat.IntentBuilder

Add an email address to be used in the "bcc" field of the final Intent.

Parameters
address String: Email address to BCC
Return
ShareCompat.IntentBuilder This IntentBuilder for method chaining

See Also

addEmailBcc

@NonNull open fun addEmailBcc(@NonNull addresses: Array<String!>): ShareCompat.IntentBuilder

Add an array of email addresses to be used in the "bcc" field of the final Intent.

Parameters
addresses Array<String!>: Email addresses to BCC
Return
ShareCompat.IntentBuilder This IntentBuilder for method chaining

See Also

addEmailCc

@NonNull open fun addEmailCc(@NonNull address: String): ShareCompat.IntentBuilder

Add an email address to be used in the "cc" field of the final Intent.

Parameters
address String: Email address to CC
Return
ShareCompat.IntentBuilder This IntentBuilder for method chaining

See Also

addEmailCc

@NonNull open fun addEmailCc(@NonNull addresses: Array<String!>): ShareCompat.IntentBuilder

Add an array of email addresses to be used in the "cc" field of the final Intent.

Parameters
addresses Array<String!>: Email addresses to CC
Return
ShareCompat.IntentBuilder This IntentBuilder for method chaining

See Also

addEmailTo

@NonNull open fun addEmailTo(@NonNull address: String): ShareCompat.IntentBuilder

Add an email address to be used in the "to" field of the final Intent.

Parameters
address String: Email address to send to
Return
ShareCompat.IntentBuilder This IntentBuilder for method chaining

addEmailTo

@NonNull open fun addEmailTo(@NonNull addresses: Array<String!>): ShareCompat.IntentBuilder

Add an array of email addresses to be used in the "to" field of the final Intent.

Parameters
addresses Array<String!>: Email addresses to send to
Return
ShareCompat.IntentBuilder This IntentBuilder for method chaining

addStream

@NonNull open fun addStream(@NonNull streamUri: Uri): ShareCompat.IntentBuilder

Add a stream URI to the data that should be shared. If this is not the first stream URI added the final intent constructed will become an ACTION_SEND_MULTIPLE intent. Not all apps will handle both ACTION_SEND and ACTION_SEND_MULTIPLE.

Parameters
streamUri Uri: URI of the stream to share
Return
ShareCompat.IntentBuilder This IntentBuilder for method chaining

createChooserIntent

@NonNull open fun createChooserIntent(): Intent

Create an Intent that will launch the standard Android activity chooser, allowing the user to pick what activity/app on the system should handle the share.

Return
Intent A chooser Intent for the currently configured sharing action

from

@NonNull open static fun from(@NonNull launchingActivity: Activity): ShareCompat.IntentBuilder

Deprecated: Use the constructor of IntentBuilder

Create a new IntentBuilder for launching a sharing action from launchingActivity.

Parameters
launchingActivity Activity: Activity that the share will be launched from
Return
ShareCompat.IntentBuilder a new IntentBuilder instance

getIntent

@NonNull open fun getIntent(): Intent

Retrieve the Intent as configured so far by the IntentBuilder. This Intent is suitable for use in a ShareActionProvider or chooser dialog.

To create an intent that will launch the activity chooser so that the user may select a target for the share, see createChooserIntent().

Return
Intent The current Intent being configured by this builder

setChooserTitle

@NonNull open fun setChooserTitle(@Nullable title: