DefaultTileClient

class DefaultTileClient : TileClient


Implementation of TileClient which can connect to a TileService in either the local process, or in a remote app.

This implementation will only stay connected for as long as required. Each call will cause this client to connect to the TileService, and call the specified remote method. It will then disconnect again after one second of inactivity (so calls in quick succession will share the same binder).

Note that there is a timeout of 10s when connecting to the TileService, and a timeout of 30s for requestTile and requestResources to return a payload.

Summary

Public constructors

DefaultTileClient(
    context: Context,
    componentName: ComponentName,
    executor: Executor
)

Build an instance of DefaultTileClient for use with a given Executor.

DefaultTileClient(
    context: Context,
    componentName: ComponentName,
    coroutineScope: CoroutineScope,
    coroutineDispatcher: CoroutineDispatcher
)

Build an instance of DefaultTileClient for use with a coroutine dispatcher.

Public functions

open ListenableFuture<Int>

Gets the API version supported by the connected TileService.

open ListenableFuture<ResourceBuilders.Resources>

This function is deprecated.

Use requestTileResourcesAsync instead.

open ListenableFuture<TileBuilders.Tile>

Request a tile payload from the connected TileService.

open ListenableFuture<ResourceBuilders.Resources>

Request a resource bundle from the connected TileService.

open ListenableFuture<Void?>

Send a Tile Added notification to the connected TileService.

open ListenableFuture<Void?>

Send a Tile Enter notification to the connected TileService.

open ListenableFuture<Void?>

Send a Tile Leave notification to the connected TileService.

open ListenableFuture<Void?>

Send a Tile Removed notification to the connected TileService.

Public constructors

DefaultTileClient

Added in 1.0.0
DefaultTileClient(
    context: Context,
    componentName: ComponentName,
    executor: Executor
)

Build an instance of DefaultTileClient for use with a given Executor.

Parameters
context: Context

The application context to use when binding to the TileService.

componentName: ComponentName

The ComponentName of the TileService to bind to.

executor: Executor

An Executor to use when dispatching calls to the TileService.

DefaultTileClient

Added in 1.0.0
DefaultTileClient(
    context: Context,
    componentName: ComponentName,
    coroutineScope: CoroutineScope,
    coroutineDispatcher: CoroutineDispatcher
)

Build an instance of DefaultTileClient for use with a coroutine dispatcher.

Parameters
context: Context

The application context to use when binding to the TileService.

componentName: ComponentName

The ComponentName of the TileService to bind to.

coroutineScope: CoroutineScope

A CoroutineScope to use when dispatching calls to the TileService. Cancelling the passed CoroutineScope will also cancel any pending work in this class.

coroutineDispatcher: CoroutineDispatcher

A CoroutineDispatcher to use when dispatching work from this class.

Public functions

requestApiVersion

Added in 1.4.0-alpha01
open fun requestApiVersion(): ListenableFuture<Int>

Gets the API version supported by the connected TileService.

requestResources

Added in 1.4.0-alpha01
Deprecated in 1.4.0-alpha01
open fun requestResources(requestParams: RequestBuilders.ResourcesRequest): ListenableFuture<ResourceBuilders.Resources>

Request a resource bundle from the connected TileService.

requestTile

Added in 1.4.0-alpha01
open fun requestTile(requestParams: RequestBuilders.TileRequest): ListenableFuture<TileBuilders.Tile>

Request a tile payload from the connected TileService.

requestTileResourcesAsync

open fun requestTileResourcesAsync(
    requestParams: RequestBuilders.ResourcesRequest
): ListenableFuture<ResourceBuilders.Resources>

Request a resource bundle from the connected TileService.

sendOnTileAddedEvent

Added in 1.4.0-alpha01
open fun sendOnTileAddedEvent(): ListenableFuture<Void?>

Send a Tile Added notification to the connected TileService.

sendOnTileEnterEvent

Added in 1.4.0-alpha01
open fun sendOnTileEnterEvent(): ListenableFuture<Void?>

Send a Tile Enter notification to the connected TileService.

sendOnTileLeaveEvent

Added in 1.4.0-alpha01
open fun sendOnTileLeaveEvent(): ListenableFuture<Void?>

Send a Tile Leave notification to the connected TileService.

sendOnTileRemovedEvent

Added in 1.4.0-alpha01
open fun sendOnTileRemovedEvent(): ListenableFuture<Void?>

Send a Tile Removed notification to the connected TileService.