This interface is deprecated.
Use MessageClient
.
Exposes an API for components to send messages to other nodes.
Messages are delivered to connected network nodes. A message is considered successful if
it has been queued for delivery to the specified node. A message will only be queued if the
specified node is connected. The DataApi
should
be used for messages to nodes which are not currently connected (to be delivered on
connection).
Messages should generally contain ephemeral, small payloads. Use assets
with the
DataApi
to store
more persistent or larger data efficiently.
A message is private to the application that created it and accessible only by that application on other nodes.
Nested Class Summary
@interface | MessageApi.FilterType | ||
interface | MessageApi.MessageListener | This interface is deprecated. Use
MessageClient.OnMessageReceivedListener . |
|
interface | MessageApi.SendMessageResult | This interface is deprecated. See
MessageClient.sendMessage(String, String, byte[]) . |
Constant Summary
String | ACTION_MESSAGE_RECEIVED | Message received action for use in manifest-based listener filters. |
int | FILTER_LITERAL | Filter type for
addListener(GoogleApiClient, MessageListener, Uri, int) : if this filter is
set, the given URI will be taken as a literal path, and the operation will apply to
the matching message only. |
int | FILTER_PREFIX | Filter type for
addListener(GoogleApiClient, MessageListener, Uri, int) : if this filter is
set, the given URI will be taken as a path prefix, and the operation will apply to
all matching messages. |
int | UNKNOWN_REQUEST_ID | A value returned by
MessageApi.SendMessageResult.getRequestId() when
sendMessage(GoogleApiClient, String, String, byte[]) fails. |
Public Method Summary
abstract PendingResult<Status> |
addListener(GoogleApiClient
client,
MessageApi.MessageListener listener, Uri uri, int
filterType)
Registers a listener to be notified of received messages.
|
abstract PendingResult<Status> |
addListener(GoogleApiClient
client,
MessageApi.MessageListener listener)
Registers a listener to be notified of received messages.
|
abstract PendingResult<Status> |
removeListener(GoogleApiClient
client,
MessageApi.MessageListener listener)
Removes a message listener which was previously added through
addListener(GoogleApiClient, MessageListener) .
|
abstract PendingResult<MessageApi.SendMessageResult> |
sendMessage(GoogleApiClient
client, String nodeId,
String
path, byte[] data)
Sends
byte[] data to the specified node.
|
Constants
public static final String ACTION_MESSAGE_RECEIVED
Message received action for use in manifest-based listener filters.
See Also
public static final int FILTER_LITERAL
Filter type for
addListener(GoogleApiClient, MessageListener, Uri, int)
: if this filter is
set, the given URI will be taken as a literal path, and the operation will apply to the
matching message only.
public static final int FILTER_PREFIX
Filter type for
addListener(GoogleApiClient, MessageListener, Uri, int)
: if this filter is
set, the given URI will be taken as a path prefix, and the operation will apply to all
matching messages.
public static final int UNKNOWN_REQUEST_ID
A value returned by
MessageApi.SendMessageResult.getRequestId()
when
sendMessage(GoogleApiClient, String, String, byte[])
fails.
Public Methods
public abstract PendingResult<Status> addListener (GoogleApiClient client, MessageApi.MessageListener listener, Uri uri, int filterType)
Registers a listener to be notified of received messages. Calls to this method
should be balanced with
removeListener(GoogleApiClient, MessageListener)
to avoid leaking
resources.
uri
and filterType
can be used to filter the messages sent
to the listener. For example, if uri
and filterType
create a
path prefix filter, then only messages matching that prefix will be notified. The
uri
follows the rules of the <data>
element of <intent-filter>. The path is ignored if a URI host is not specified.
The host should be an Android Wear node ID, or * to match any node. For example, you
should use:
wear://*/<path>
wear://<nodeId>/<path>
Listener events will be called on the main thread, or the handler specified on
client
when it was built (using
GoogleApiClient.Builder.setHandler(Handler)
).
Callers wishing to be notified of events in the background should use WearableListenerService
.
public abstract PendingResult<Status> addListener (GoogleApiClient client, MessageApi.MessageListener listener)
Registers a listener to be notified of received messages. Calls to this method
should be balanced with
removeListener(GoogleApiClient, MessageListener)
to avoid leaking
resources.
Listener events will be called on the main thread, or the handler specified on
client
when it was built (using
GoogleApiClient.Builder.setHandler(Handler)
).
Callers wishing to be notified of events in the background should use WearableListenerService
.
public abstract PendingResult<Status> removeListener (GoogleApiClient client, MessageApi.MessageListener listener)
Removes a message listener which was previously added through
addListener(GoogleApiClient, MessageListener)
.
public abstract PendingResult<MessageApi.SendMessageResult> sendMessage (GoogleApiClient client, String nodeId, String path, byte[] data)
Sends byte[]
data to the specified node.
Parameters
client | |
---|---|
nodeId | identifier for a particular node on the Android Wear network. Valid targets may
be obtained through
NodeApi.getConnectedNodes(GoogleApiClient) or from the host in
DataItem.getUri() . |
path | identifier used to specify a particular endpoint at the receiving node |
data | small array of information to pass to the target node. Generally not larger than 100k |
Returns
- a
PendingResult
that is set when the message is queued to be sent. A successful result doesn't guarantee delivery.