PostMessageServiceConnection
public abstract class PostMessageServiceConnection implements ServiceConnection
A ServiceConnection for Custom Tabs providers to use while connecting to a PostMessageService on the client side. TODO(peconn): Make this not abstract with API change.
Summary
Public constructors |
|---|
Public methods |
|
|---|---|
boolean |
bindSessionToPostMessageService(Binds the browser side to the client app through the given |
final boolean |
notifyMessageChannelReady(@Nullable Bundle extras)Records that the message channel has been created and notifies the client. |
void |
Called when the |
void |
Called when the connection is lost with the |
final void |
onServiceConnected(@NonNull ComponentName name, @NonNull IBinder service) |
final void |
|
final boolean |
postMessage(@NonNull String message, @Nullable Bundle extras)Posts a message to the client. |
void |
unbindFromContext(@NonNull Context context)Unbinds this service connection from the given context. |
Inherited methods |
||||
|---|---|---|---|---|
|
Public constructors
PostMessageServiceConnection
public PostMessageServiceConnection(@NonNull CustomTabsSessionToken session)
Public methods
bindSessionToPostMessageService
public boolean bindSessionToPostMessageService(
@NonNull Context context,
@NonNull String packageName
)
Binds the browser side to the client app through the given PostMessageService name. After this, this PostMessageServiceConnection can be used for sending postMessage related communication back to the client.
| Parameters | |
|---|---|
@NonNull Context context |
A context to bind to the service. |
@NonNull String packageName |
The name of the package to be bound to. |
| Returns | |
|---|---|
boolean |
Whether the binding was successful. |
notifyMessageChannelReady
public final boolean notifyMessageChannelReady(@Nullable Bundle extras)
Records that the message channel has been created and notifies the client. This method should be called when the browser binds to the client side PostMessageService and also readies a connection to the web frame.
| Returns | |
|---|---|
boolean |
Whether the notification was sent successfully. |
onPostMessageServiceConnected
public void onPostMessageServiceConnected()
Called when the PostMessageService connection is established.
onPostMessageServiceDisconnected
public void onPostMessageServiceDisconnected()
Called when the connection is lost with the PostMessageService.
onServiceConnected
public final void onServiceConnected(@NonNull ComponentName name, @NonNull IBinder service)
onServiceDisconnected
public final void onServiceDisconnected(@NonNull ComponentName name)
postMessage
public final boolean postMessage(@NonNull String message, @Nullable Bundle extras)
Posts a message to the client. This should be called when a tab controlled by related CustomTabsSession has sent a postMessage. If postMessage() is called from a single thread, then the messages will be posted in the same order.
| Parameters | |
|---|---|
@NonNull String message |
The message sent. |
@Nullable Bundle extras |
Reserved for future use. |
| Returns | |
|---|---|
boolean |
Whether the postMessage was sent to the remote successfully. |