MediaRouter.RouteInfo


public class MediaRouter.RouteInfo

Known direct subclasses
MediaRouter.GroupRouteInfo

Provides information about a media route that represents a dynamic group.


Provides information about a media route.

Each media route has a list of media control intent filters that describe the capabilities of the route and the manner in which it is used and controlled.

Summary

Constants

static final int

A connection state indicating the route is connected.

static final int

A connection state indicating the route is in the process of connecting and is not yet ready for use.

static final int

The default connection state indicating the route is disconnected.

static final int

A receiver device type indicating that the presentation of the media is happening on an Audio/Video receiver (AVR).

static final int

A receiver device type indicating the presentation of the media is happening on a Bluetooth Low Energy (BLE) HEADSET.

static final int

A receiver device type of the route indicating the presentation of the media is happening on a bluetooth device such as a bluetooth speaker.

static final int

A receiver device type indicating the presentation of the media is happening on a speaker system (i.e. a mono speaker or stereo speakers) built into the device.

static final int

A receiver device type indicating that the presentation of the media is happening on a car.

static final int

A receiver device type indicating that the presentation of the media is happening on a computer.

static final int

A receiver device type indicating the presentation of the media is happening on an audio device associated on a dock.

static final int

A receiver device type indicating that the presentation of the media is happening on a gaming console.

static final int

A receiver device type indicating that the presentation of the media is happening on a group of devices.

static final int

A receiver device type indicating the presentation of the media is happening on an HDMI connection.

static final int

A receiver device type indicating the presentation of the media is happening on an Audio Return Channel of an HDMI connection

static final int

A receiver device type indicating the presentation of the media is happening on an Enhanced Audio Return Channel of an HDMI connection

static final int

A receiver device type indicating the presentation of the media is happening on a hearing aid device.

static final int

A receiver device type of the route indicating the presentation of the media is happening on a remote speaker.

static final int

A receiver device type indicating that the presentation of the media is happening on a smartphone.

static final int

A receiver device type indicating that the presentation of the media is happening on a smartwatch.

static final int

This field is deprecated.

use DEVICE_TYPE_BUILTIN_SPEAKER and DEVICE_TYPE_REMOTE_SPEAKER instead.

static final int

A receiver device type indicating that the presentation of the media is happening on a tablet.

static final int

A receiver device type indicating that the presentation of the media is happening on a docked tablet.

static final int

A receiver device type of the route indicating the presentation of the media is happening on a TV.

static final int

A receiver device type indicating the presentation of the media is happening on a USB audio device in accessory mode.

static final int

A receiver device type indicating the presentation of the media is happening on a USB audio device.

static final int

A receiver device type indicating the presentation of the media is happening on a USB audio headset.

static final int

A receiver device type indicating the presentation of the media is happening on a pair of wired headphones.

static final int

A receiver device type indicating the presentation of the media is happening on a headset, which is the combination of a headphones and a microphone.

static final int

The default playback type, "local", indicating the presentation of the media is happening on the same device (e.g. a phone, a tablet) as where it is controlled from.

static final int

A playback type indicating the presentation of the media is happening on a different device (i.e. the remote device) than where it is controlled from.

static final int

Playback information indicating the playback volume is fixed, i.e. it cannot be controlled from this object.

static final int

Playback information indicating the playback volume is variable and can be controlled from this object.

Public methods

boolean

Gets whether this route supports disconnecting without interrupting playback.

void

Connects this route without selecting it.

void

Disconnects this route.

int

Gets the connection state of the route.

@NonNull List<IntentFilter>

Gets a list of media control intent filters that describe the capabilities of this route and the media control actions that it supports.

@Nullable String

Gets the user-visible description of the route.

int

Gets the type of the receiver device associated with this route.

@Nullable Bundle

Gets a collection of extra properties about this route that were supplied by its media route provider, or null if none.

@Nullable Uri

Gets the URI of the icon representing this route.

@NonNull String

Gets the unique id of the route.

@Nullable MediaRouteDescriptor

Returns the MediaRouteDescriptor of this media route info or null if it is not updated by its provider yet.

@NonNull String

Gets the user-visible name of the route.

int

Gets the audio stream over which the playback associated with this route is performed.

int

Gets the type of playback associated with this route.

@Nullable Display

Gets the Display that should be used by the application to show a android.app.Presentation on an external display when this route is selected.

@NonNull MediaRouter.ProviderInfo

Gets information about the provider of this media route.

@Nullable IntentSender

Gets an intent sender for launching a settings activity for this route.

int

Gets the current volume for this route.

int

Gets information about how volume is handled on the route.

int

Gets the maximum volume at which the playback associated with this route is performed.

boolean

Returns true if this route is a bluetooth route.

boolean

This method is deprecated.

use getConnectionState instead.

boolean

Returns true if this route is the default route.

boolean

Returns true if this route is the default route and the device speaker.

boolean

Returns true if this route is enabled and may be selected.

boolean

Returns true if this route is currently selected.

boolean

Returns true if this route is a system route.

boolean

Returns true if the route supports at least one of the capabilities described by a media route selector.

void

Requests a volume change for this route asynchronously.

void

Requests an incremental volume update for this route asynchronously.

void

Selects this media route.

void

Sends a media control request to be performed asynchronously by the route's destination.

boolean

Returns true if the route supports the specified media control category and action.

boolean

Returns true if the route supports the specified media control category.

boolean

Returns true if the route supports the specified media control request.

@NonNull String

Constants

CONNECTION_STATE_CONNECTED

Added in 1.1.0
public static final int CONNECTION_STATE_CONNECTED = 2

A connection state indicating the route is connected.

CONNECTION_STATE_CONNECTING

Added in 1.1.0
public static final int CONNECTION_STATE_CONNECTING = 1

A connection state indicating the route is in the process of connecting and is not yet ready for use.

CONNECTION_STATE_DISCONNECTED

Added in 1.1.0
public static final int CONNECTION_STATE_DISCONNECTED = 0

The default connection state indicating the route is disconnected.

DEVICE_TYPE_AUDIO_VIDEO_RECEIVER

Added in 1.6.0
public static final int DEVICE_TYPE_AUDIO_VIDEO_RECEIVER = 4

A receiver device type indicating that the presentation of the media is happening on an Audio/Video receiver (AVR).

See also
getDeviceType

DEVICE_TYPE_BLE_HEADSET

Added in 1.7.0
public static final int DEVICE_TYPE_BLE_HEADSET = 22

A receiver device type indicating the presentation of the media is happening on a Bluetooth Low Energy (BLE) HEADSET.

See also
getDeviceType

DEVICE_TYPE_BLUETOOTH_A2DP

Added in 1.7.0
public static final int DEVICE_TYPE_BLUETOOTH_A2DP = 3

A receiver device type of the route indicating the presentation of the media is happening on a bluetooth device such as a bluetooth speaker.

See also
getDeviceType

DEVICE_TYPE_BUILTIN_SPEAKER

Added in 1.7.0
public static final int DEVICE_TYPE_BUILTIN_SPEAKER = 12

A receiver device type indicating the presentation of the media is happening on a speaker system (i.e. a mono speaker or stereo speakers) built into the device.

See also
getDeviceType

DEVICE_TYPE_CAR

Added in 1.6.0
public static final int DEVICE_TYPE_CAR = 9

A receiver device type indicating that the presentation of the media is happening on a car.

See also
getDeviceType

DEVICE_TYPE_COMPUTER

Added in 1.6.0
public static final int DEVICE_TYPE_COMPUTER = 7

A receiver device type indicating that the presentation of the media is happening on a computer.

See also
getDeviceType

DEVICE_TYPE_DOCK

Added in 1.7.0
public static final int DEVICE_TYPE_DOCK = 19

A receiver device type indicating the presentation of the media is happening on an audio device associated on a dock.

See also
getDeviceType

DEVICE_TYPE_GAME_CONSOLE

Added in 1.6.0
public static final int DEVICE_TYPE_GAME_CONSOLE = 8

A receiver device type indicating that the presentation of the media is happening on a gaming console.

See also
getDeviceType

DEVICE_TYPE_GROUP

Added in 1.6.0
public static final int DEVICE_TYPE_GROUP = 1000

A receiver device type indicating that the presentation of the media is happening on a group of devices.

See also
getDeviceType

DEVICE_TYPE_HDMI

Added in 1.7.0
public static final int DEVICE_TYPE_HDMI = 16

A receiver device type indicating the presentation of the media is happening on an HDMI connection.

See also
getDeviceType

DEVICE_TYPE_HDMI_ARC

Added in 1.7.0
public static final int DEVICE_TYPE_HDMI_ARC = 23

A receiver device type indicating the presentation of the media is happening on an Audio Return Channel of an HDMI connection

See also
getDeviceType

DEVICE_TYPE_HDMI_EARC

Added in 1.7.0
public static final int DEVICE_TYPE_HDMI_EARC = 24

A receiver device type indicating the presentation of the media is happening on an Enhanced Audio Return Channel of an HDMI connection

See also
getDeviceType

DEVICE_TYPE_HEARING_AID

Added in 1.7.0
public static final int DEVICE_TYPE_HEARING_AID = 21

A receiver device type indicating the presentation of the media is happening on a hearing aid device.

See also
getDeviceType

DEVICE_TYPE_REMOTE_SPEAKER

Added in 1.7.0
public static final int DEVICE_TYPE_REMOTE_SPEAKER = 2

A receiver device type of the route indicating the presentation of the media is happening on a remote speaker.

See also
getDeviceType

DEVICE_TYPE_SMARTPHONE

Added in 1.7.0
public static final int DEVICE_TYPE_SMARTPHONE = 11

A receiver device type indicating that the presentation of the media is happening on a smartphone.

See also
getDeviceType

DEVICE_TYPE_SMARTWATCH

Added in 1.6.0
public static final int DEVICE_TYPE_SMARTWATCH = 10

A receiver device type indicating that the presentation of the media is happening on a smartwatch.

See also
getDeviceType

DEVICE_TYPE_SPEAKER

Added in 1.1.0
Deprecated in 1.7.0
public static final int DEVICE_TYPE_SPEAKER = 2

A receiver device type of the route indicating the presentation of the media is happening on a speaker.

See also
getDeviceType

DEVICE_TYPE_TABLET

Added in 1.6.0
public static final int DEVICE_TYPE_TABLET = 5

A receiver device type indicating that the presentation of the media is happening on a tablet.

See also
getDeviceType

DEVICE_TYPE_TABLET_DOCKED

Added in 1.6.0
public static final int DEVICE_TYPE_TABLET_DOCKED = 6

A receiver device type indicating that the presentation of the media is happening on a docked tablet.

See also
getDeviceType

DEVICE_TYPE_TV

Added in 1.1.0
public static final int DEVICE_TYPE_TV = 1

A receiver device type of the route indicating the presentation of the media is happening on a TV.

See also
getDeviceType

DEVICE_TYPE_USB_ACCESSORY

Added in 1.7.0
public static final int DEVICE_TYPE_USB_ACCESSORY = 18

A receiver device type indicating the presentation of the media is happening on a USB audio device in accessory mode.

See also
getDeviceType

DEVICE_TYPE_USB_DEVICE

Added in 1.7.0
public static final int DEVICE_TYPE_USB_DEVICE = 17

A receiver device type indicating the presentation of the media is happening on a USB audio device.

See also
getDeviceType

DEVICE_TYPE_USB_HEADSET

Added in 1.7.0
public static final int DEVICE_TYPE_USB_HEADSET = 20

A receiver device type indicating the presentation of the media is happening on a USB audio headset.

See also
getDeviceType

DEVICE_TYPE_WIRED_HEADPHONES

Added in 1.7.0
public static final int DEVICE_TYPE_WIRED_HEADPHONES = 14

A receiver device type indicating the presentation of the media is happening on a pair of wired headphones.

See also
getDeviceType

DEVICE_TYPE_WIRED_HEADSET

Added in 1.7.0
public static final int DEVICE_TYPE_WIRED_HEADSET = 13

A receiver device type indicating the presentation of the media is happening on a headset, which is the combination of a headphones and a microphone.

See also
getDeviceType

PLAYBACK_TYPE_LOCAL

Added in 1.1.0
public static final int PLAYBACK_TYPE_LOCAL = 0

The default playback type, "local", indicating the presentation of the media is happening on the same device (e.g. a phone, a tablet) as where it is controlled from.

See also
getPlaybackType

PLAYBACK_TYPE_REMOTE

Added in 1.1.0
public static final int PLAYBACK_TYPE_REMOTE = 1

A playback type indicating the presentation of the media is happening on a different device (i.e. the remote device) than where it is controlled from.

See also
getPlaybackType

PLAYBACK_VOLUME_FIXED

Added in 1.1.0
public static final int PLAYBACK_VOLUME_FIXED = 0

Playback information indicating the playback volume is fixed, i.e. it cannot be controlled from this object. An example of fixed playback volume is a remote player, playing over HDMI where the user prefers to control the volume on the HDMI sink, rather than attenuate at the source.

PLAYBACK_VOLUME_VARIABLE

Added in 1.1.0
public static final int PLAYBACK_VOLUME_VARIABLE = 1

Playback information indicating the playback volume is variable and can be controlled from this object.

Public methods

canDisconnect

Added in 1.1.0
public boolean canDisconnect()

Gets whether this route supports disconnecting without interrupting playback.

Returns
boolean

True if this route can disconnect without stopping playback, false otherwise.

connect

Added in 1.8.0
@MainThread
public void connect()

Connects this route without selecting it.

A route may be selected or connected. Route selection is performed using the select method. The media router library supports a single selected route which is typically the active playback device chosen by the user. This method enables connection to additional routes while maintaining the current route selection. If the specified route is already selected, this method has no effect.

The route controller dialog should display only the selected route, as this is the one users directly interact with. Connected routes are typically managed by the application in the background and are not generally relevant to the user.

After calling this method to connect a route, the application will receive the onRouteConnected callback when the connection is established. The connected RouteInfo can then be used to send control commands to the route. If the connection fails, the application receives the onRouteDisconnected callback with error details.

Must be called on the main thread.

disconnect

Added in 1.8.0
@MainThread
public void disconnect()

Disconnects this route.

If it is a connected route, then it will disconnect this route. If it is a selected route, disconnecting this route will do nothing.

After calling this method to disconnect a route, the application receives the onRouteDisconnected callback.

Must be called on the main thread.

getConnectionState

Added in 1.1.0
public int getConnectionState()

Gets the connection state of the route.

Returns
int

The connection state of this route: CONNECTION_STATE_DISCONNECTED, CONNECTION_STATE_CONNECTING, or CONNECTION_STATE_CONNECTED.

getControlFilters

Added in 1.1.0
public @NonNull List<IntentFiltergetControlFilters()

Gets a list of media control intent filters that describe the capabilities of this route and the media control actions that it supports.

Returns
@NonNull List<IntentFilter>

A list of intent filters that specifies the media control intents that this route supports.

getDescription

Added in 1.1.0
public @Nullable String getDescription()

Gets the user-visible description of the route.

The route description describes the kind of destination represented by the route. It may be a user-supplied string, a model number or brand of device.

Returns
@Nullable String

The description of the route, or null if none.

getDeviceType

Added in 1.1.0
public int getDeviceType()

Gets the type of the receiver device associated with this route.

Returns
int

The type of the receiver device associated with this route.

getExtras

Added in 1.1.0
public @Nullable Bundle getExtras()

Gets a collection of extra properties about this route that were supplied by its media route provider, or null if none.

getIconUri

Added in 1.1.0