MediaRoute2Info
public
final
class
MediaRoute2Info
extends Object
implements
Parcelable
java.lang.Object | |
↳ | android.media.MediaRoute2Info |
Describes the properties of a route.
Summary
Nested classes | |
---|---|
class |
MediaRoute2Info.Builder
Builder for |
Constants | |
---|---|
int |
CONNECTION_STATE_CONNECTED
A connection state indicating the route is connected. |
int |
CONNECTION_STATE_CONNECTING
A connection state indicating the route is in the process of connecting and is not yet ready for use. |
int |
CONNECTION_STATE_DISCONNECTED
The default connection state indicating the route is disconnected. |
String |
FEATURE_LIVE_AUDIO
Route feature: Live audio. |
String |
FEATURE_LIVE_VIDEO
Route feature: Live video. |
String |
FEATURE_REMOTE_AUDIO_PLAYBACK
Route feature: Remote audio playback. |
String |
FEATURE_REMOTE_PLAYBACK
Route feature: Remote playback. |
String |
FEATURE_REMOTE_VIDEO_PLAYBACK
Route feature: Remote video playback. |
int |
PLAYBACK_VOLUME_FIXED
Playback information indicating the playback volume is fixed, i.e. it cannot be controlled from this object. |
int |
PLAYBACK_VOLUME_VARIABLE
Playback information indicating the playback volume is variable and can be controlled from this object. |
int |
SUITABILITY_STATUS_NOT_SUITABLE_FOR_TRANSFER
Indicates that the route is never suitable for media playback. |
int |
SUITABILITY_STATUS_SUITABLE_FOR_DEFAULT_TRANSFER
Indicates the route is always suitable for media playback. |
int |
SUITABILITY_STATUS_SUITABLE_FOR_MANUAL_TRANSFER
Indicates that the route is suitable for media playback only after explicit user selection. |
int |
TYPE_BLE_HEADSET
Indicates the route is a Bluetooth Low Energy (BLE) HEADSET. |
int |
TYPE_BLUETOOTH_A2DP
Indicates the route is a bluetooth device, such as a bluetooth speaker or headphones. |
int |
TYPE_BUILTIN_SPEAKER
Indicates the route is the speaker system (i.e. |
int |
TYPE_DOCK
Indicates the route is the audio device associated with a dock. |
int |
TYPE_GROUP
Indicates the route is a group of devices. |
int |
TYPE_HDMI
Indicates the route is an HDMI connection. |
int |
TYPE_HDMI_ARC
Indicates the route is an Audio Return Channel of an HDMI connection. |
int |
TYPE_HDMI_EARC
Indicates the route is an Enhanced Audio Return Channel of an HDMI connection. |
int |
TYPE_HEARING_AID
Indicates the route is a hearing aid. |
int |
TYPE_REMOTE_AUDIO_VIDEO_RECEIVER
Indicates the route is a remote Audio/Video Receiver (AVR). |
int |
TYPE_REMOTE_CAR
Indicates the route is a remote car. |
int |
TYPE_REMOTE_COMPUTER
Indicates the route is a remote computer. |
int |
TYPE_REMOTE_GAME_CONSOLE
Indicates the route is a remote gaming console. |
int |
TYPE_REMOTE_SMARTPHONE
Indicates the route is a remote smartphone. |
int |
TYPE_REMOTE_SMARTWATCH
Indicates the route is a remote smartwatch. |
int |
TYPE_REMOTE_SPEAKER
Indicates the route is a remote speaker. |
int |
TYPE_REMOTE_TABLET
Indicates the route is a remote tablet. |
int |
TYPE_REMOTE_TABLET_DOCKED
Indicates the route is a remote docked tablet. |
int |
TYPE_REMOTE_TV
Indicates the route is a remote TV. |
int |
TYPE_UNKNOWN
Indicates the route's type is unknown or undefined. |
int |
TYPE_USB_ACCESSORY
Indicates the route is a USB audio device in accessory mode. |
int |
TYPE_USB_DEVICE
Indicates the route is a USB audio device. |
int |
TYPE_USB_HEADSET
Indicates the route is a USB audio headset. |
int |
TYPE_WIRED_HEADPHONES
Indicates the route is a pair of wired headphones. |
int |
TYPE_WIRED_HEADSET
Indicates the route is a headset, which is the combination of a headphones and a microphone. |
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<MediaRoute2Info> |
CREATOR
|
Public methods | |
---|---|
int
|
describeContents()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
boolean
|
equals(Object obj)
Indicates whether some other object is "equal to" this one. |
String
|
getClientPackageName()
Gets the package name of the app using the route. |
int
|
getConnectionState()
Gets the connection state of the route. |
Set<String>
|
getDeduplicationIds()
Gets the deduplication IDs associated to the route. |
CharSequence
|
getDescription()
Gets the user-visible description of the route. |
Bundle
|
getExtras()
Gets an optional bundle with extra data. |
List<String>
|
getFeatures()
Gets the supported features of the route. |
Uri
|
getIconUri()
Gets the URI of the icon representing this route. |
String
|
getId()
Gets the id of the route. |
CharSequence
|
getName()
Gets the user-visible name of the route. |
int
|
getSuitabilityStatus()
Returns the route suitability status. |
int
|
getType()
Returns the type of this route. |
int
|
getVolume()
Gets the current volume of the route. |
int
|
getVolumeHandling()
Gets information about how volume is handled on the route. |
int
|
getVolumeMax()
Gets the maximum volume of the route. |
int
|
hashCode()
Returns a hash code value for the object. |
boolean
|
isSystemRoute()
Returns whether the route is a system route or not. |
String
|
toString()
Returns a string representation of the object. |
void
|
writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
Constants
CONNECTION_STATE_CONNECTED
public static final int CONNECTION_STATE_CONNECTED
A connection state indicating the route is connected.
See also:
Constant Value: 2 (0x00000002)
CONNECTION_STATE_CONNECTING
public static final int CONNECTION_STATE_CONNECTING
A connection state indicating the route is in the process of connecting and is not yet ready for use.
See also:
Constant Value: 1 (0x00000001)
CONNECTION_STATE_DISCONNECTED
public static final int CONNECTION_STATE_DISCONNECTED
The default connection state indicating the route is disconnected.
See also:
Constant Value: 0 (0x00000000)
FEATURE_LIVE_AUDIO
public static final String FEATURE_LIVE_AUDIO
Route feature: Live audio.
A route that supports live audio routing will allow the media audio stream to be sent to supported destinations. This can include internal speakers or audio jacks on the device itself, A2DP devices, and more.
When a live audio route is selected, audio routing is transparent to the application. All audio played on the media stream will be routed to the selected destination.
Refer to the class documentation for details about live audio routes.
Constant Value: "android.media.route.feature.LIVE_AUDIO"
FEATURE_LIVE_VIDEO
public static final String FEATURE_LIVE_VIDEO
Route feature: Live video.
A route that supports live video routing will allow a mirrored version
of the device's primary display or a customized
Presentation
to be sent to supported
destinations.
When a live video route is selected, audio and video routing is transparent
to the application. By default, audio and video is routed to the selected
destination. For certain live video routes, the application may also use a
Presentation
to replace the mirrored view
on the external display with different content.
Refer to the class documentation for details about live video routes.
See also:
Constant Value: "android.media.route.feature.LIVE_VIDEO"
FEATURE_REMOTE_AUDIO_PLAYBACK
public static final String FEATURE_REMOTE_AUDIO_PLAYBACK
Route feature: Remote audio playback.
A route that supports remote audio playback routing will allow an application to send requests to play audio content remotely to supported destinations.
Constant Value: "android.media.route.feature.REMOTE_AUDIO_PLAYBACK"
FEATURE_REMOTE_PLAYBACK
public static final String FEATURE_REMOTE_PLAYBACK
Route feature: Remote playback.
A route that supports remote playback routing will allow an application to send
requests to play content remotely to supported destinations.
A route may only support audio playback
or
video playback
.
Remote playback routes destinations operate independently of the local device.
When a remote playback route is selected, the application can control the content
playing on the destination using MediaRouter2.RoutingController.getControlHints()
.
The application may also receive status updates from the route regarding remote playback.
Refer to the class documentation for details about remote playback routes.
Constant Value: "android.media.route.feature.REMOTE_PLAYBACK"
FEATURE_REMOTE_VIDEO_PLAYBACK
public static final String FEATURE_REMOTE_VIDEO_PLAYBACK
Route feature: Remote video playback.
A route that supports remote video playback routing will allow an application to send requests to play video content remotely to supported destinations.
Constant Value: "android.media.route.feature.REMOTE_VIDEO_PLAYBACK"
PLAYBACK_VOLUME_FIXED
public static final int PLAYBACK_VOLUME_FIXED
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.
See also:
Constant Value: 0 (0x00000000)
PLAYBACK_VOLUME_VARIABLE
public static final int PLAYBACK_VOLUME_VARIABLE
Playback information indicating the playback volume is variable and can be controlled from this object.
See also:
Constant Value: 1 (0x00000001)
SUITABILITY_STATUS_NOT_SUITABLE_FOR_TRANSFER
public static final int SUITABILITY_STATUS_NOT_SUITABLE_FOR_TRANSFER
Indicates that the route is never suitable for media playback.
Constant Value: 2 (0x00000002)
SUITABILITY_STATUS_SUITABLE_FOR_DEFAULT_TRANSFER
public static final int SUITABILITY_STATUS_SUITABLE_FOR_DEFAULT_TRANSFER
Indicates the route is always suitable for media playback.
Constant Value: 0 (0x00000000)
SUITABILITY_STATUS_SUITABLE_FOR_MANUAL_TRANSFER
public static final int SUITABILITY_STATUS_SUITABLE_FOR_MANUAL_TRANSFER
Indicates that the route is suitable for media playback only after explicit user selection.
Constant Value: 1 (0x00000001)
TYPE_BLE_HEADSET
public static final int TYPE_BLE_HEADSET
Indicates the route is a Bluetooth Low Energy (BLE) HEADSET.
See also:
Constant Value: 26 (0x0000001a)
TYPE_BLUETOOTH_A2DP
public static final int TYPE_BLUETOOTH_A2DP
Indicates the route is a bluetooth device, such as a bluetooth speaker or headphones.
See also:
Constant Value: 8 (0x00000008)
TYPE_BUILTIN_SPEAKER
public static final int TYPE_BUILTIN_SPEAKER
Indicates the route is the speaker system (i.e. a mono speaker or stereo speakers) built into the device.
See also:
Constant Value: 2 (0x00000002)
TYPE_DOCK
public static final int TYPE_DOCK
Indicates the route is the audio device associated with a dock.
See also:
Constant Value: 13 (0x0000000d)
TYPE_GROUP
public static final int TYPE_GROUP
Indicates the route is a group of devices.
See also:
Constant Value: 2000 (0x000007d0)
TYPE_HDMI
public static final int TYPE_HDMI
Indicates the route is an HDMI connection.
See also:
Constant Value: 9 (0x00000009)
TYPE_HDMI_ARC
public static final int TYPE_HDMI_ARC
Indicates the route is an Audio Return Channel of an HDMI connection.
See also:
Constant Value: 10 (0x0000000a)
TYPE_HDMI_EARC
public static final int TYPE_HDMI_EARC
Indicates the route is an Enhanced Audio Return Channel of an HDMI connection.
See also:
Constant Value: 29 (0x0000001d)
TYPE_HEARING_AID
public static final int TYPE_HEARING_AID
Indicates the route is a hearing aid.
See also:
Constant Value: 23 (0x00000017)
TYPE_REMOTE_AUDIO_VIDEO_RECEIVER
public static final int TYPE_REMOTE_AUDIO_VIDEO_RECEIVER
Indicates the route is a remote Audio/Video Receiver (AVR).
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1003 (0x000003eb)
TYPE_REMOTE_CAR
public static final int TYPE_REMOTE_CAR
Indicates the route is a remote car.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1008 (0x000003f0)
TYPE_REMOTE_COMPUTER
public static final int TYPE_REMOTE_COMPUTER
Indicates the route is a remote computer.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1006 (0x000003ee)
TYPE_REMOTE_GAME_CONSOLE
public static final int TYPE_REMOTE_GAME_CONSOLE
Indicates the route is a remote gaming console.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1007 (0x000003ef)
TYPE_REMOTE_SMARTPHONE
public static final int TYPE_REMOTE_SMARTPHONE
Indicates the route is a remote smartphone.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1010 (0x000003f2)
TYPE_REMOTE_SMARTWATCH
public static final int TYPE_REMOTE_SMARTWATCH
Indicates the route is a remote smartwatch.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1009 (0x000003f1)
TYPE_REMOTE_SPEAKER
public static final int TYPE_REMOTE_SPEAKER
Indicates the route is a remote speaker.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1002 (0x000003ea)
TYPE_REMOTE_TABLET
public static final int TYPE_REMOTE_TABLET
Indicates the route is a remote tablet.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1004 (0x000003ec)
TYPE_REMOTE_TABLET_DOCKED
public static final int TYPE_REMOTE_TABLET_DOCKED
Indicates the route is a remote docked tablet.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1005 (0x000003ed)
TYPE_REMOTE_TV
public static final int TYPE_REMOTE_TV
Indicates the route is a remote TV.
A remote device uses a routing protocol managed by the application, as opposed to the routing being done by the system.
See also:
Constant Value: 1001 (0x000003e9)
TYPE_UNKNOWN
public static final int TYPE_UNKNOWN
Indicates the route's type is unknown or undefined.
See also:
Constant Value: 0 (0x00000000)
TYPE_USB_ACCESSORY
public static final int TYPE_USB_ACCESSORY
Indicates the route is a USB audio device in accessory mode.
See also:
Constant Value: 12 (0x0000000c)
TYPE_USB_DEVICE
public static final int TYPE_USB_DEVICE
Indicates the route is a USB audio device.
See also:
Constant Value: 11 (0x0000000b)
TYPE_USB_HEADSET
public static final int TYPE_USB_HEADSET
Indicates the route is a USB audio headset.
See also:
Constant Value: 22 (0x00000016)
TYPE_WIRED_HEADPHONES
public static final int TYPE_WIRED_HEADPHONES
Indicates the route is a pair of wired headphones.
See also:
Constant Value: 4 (0x00000004)
TYPE_WIRED_HEADSET
public static final int TYPE_WIRED_HEADSET
Indicates the route is a headset, which is the combination of a headphones and a microphone.
See also:
Constant Value: 3 (0x00000003)
Fields
Public methods
describeContents
public int describeContents ()
Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation. For example, if the object will
include a file descriptor in the output of writeToParcel(android.os.Parcel, int)
,
the return value of this method must include the
CONTENTS_FILE_DESCRIPTOR
bit.
Returns | |
---|---|
int |
a bitmask indicating the set of special object types marshaled
by this Parcelable object instance.
Value is either 0 or CONTENTS_FILE_DESCRIPTOR |
equals
public boolean equals (Object obj)
Indicates whether some other object is "equal to" this one.
The equals
method implements an equivalence relation
on non-null object references:
- It is reflexive: for any non-null reference value
x
,x.equals(x)
should returntrue
. - It is symmetric: for any non-null reference values
x
andy
,x.equals(y)
should returntrue
if and only ify.equals(x)
returnstrue
. - It is transitive: for any non-null reference values
x
,y
, andz
, ifx.equals(y)
returnstrue
andy.equals(z)
returnstrue
, thenx.equals(z)
should returntrue
. - It is consistent: for any non-null reference values
x
andy
, multiple invocations ofx.equals(y)
consistently returntrue
or consistently returnfalse
, provided no information used inequals
comparisons on the objects is modified. - For any non-null reference value
x
,x.equals(null)
should returnfalse
.
An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.
Parameters | |
---|---|
obj |
Object : the reference object with which to compare. |
Returns | |
---|---|
boolean |
true if this object is the same as the obj
argument; false otherwise. |
getClientPackageName
public String getClientPackageName ()
Gets the package name of the app using the route. Returns null if no apps are using this route.
Returns | |
---|---|
String |
getConnectionState
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 .
Value is CONNECTION_STATE_DISCONNECTED , CONNECTION_STATE_CONNECTING , or CONNECTION_STATE_CONNECTED |
getDeduplicationIds
public Set<String> getDeduplicationIds ()
Gets the deduplication IDs associated to the route.
Two routes with a matching deduplication ID originate from the same receiver device.
Returns | |
---|---|
Set<String> |
This value cannot be null . |
getDescription
public CharSequence getDescription ()
Gets the user-visible description of the route.
Returns | |
---|---|
CharSequence |
This value may be null . |
getExtras
public Bundle getExtras ()
Gets an optional bundle with extra data.
Returns | |
---|---|
Bundle |
This value may be null . |
getFeatures
public List<String> getFeatures ()
Gets the supported features of the route.
Returns | |
---|---|
List<String> |
This value cannot be null . |
getIconUri
public Uri getIconUri ()
Gets the URI of the icon representing this route.
This icon will be used in picker UIs if available.
Returns | |
---|---|
Uri |
The URI of the icon representing this route, or null if none. |
getId
public String getId ()
Gets the id of the route. The routes which are given by MediaRouter2
will have
unique IDs.
In order to ensure uniqueness in MediaRouter2
side, the value of this method
can be different from what was set in MediaRoute2ProviderService
.
Returns | |
---|---|
String |
This value cannot be null . |
getName
public CharSequence getName ()
Gets the user-visible name of the route.
Returns | |
---|---|
CharSequence |
This value cannot be null . |
getSuitabilityStatus
public int getSuitabilityStatus ()
Returns the route suitability status.
Returns | |
---|---|
int |
Value is SUITABILITY_STATUS_SUITABLE_FOR_DEFAULT_TRANSFER , SUITABILITY_STATUS_SUITABLE_FOR_MANUAL_TRANSFER , or SUITABILITY_STATUS_NOT_SUITABLE_FOR_TRANSFER |
getType
public int getType ()
Returns the type of this route.
Returns | |
---|---|
int |
Value is TYPE_UNKNOWN , TYPE_BUILTIN_SPEAKER , TYPE_WIRED_HEADSET , TYPE_WIRED_HEADPHONES , TYPE_BLUETOOTH_A2DP , TYPE_HDMI , TYPE_HDMI_ARC , TYPE_HDMI_EARC , android.media.MediaRoute2Info.TYPE_LINE_DIGITAL, android.media.MediaRoute2Info.TYPE_LINE_ANALOG, android.media.MediaRoute2Info.TYPE_AUX_LINE, TYPE_USB_DEVICE , TYPE_USB_ACCESSORY , TYPE_DOCK , TYPE_USB_HEADSET , TYPE_HEARING_AID , TYPE_BLE_HEADSET , TYPE_REMOTE_TV , TYPE_REMOTE_SPEAKER , TYPE_REMOTE_AUDIO_VIDEO_RECEIVER , TYPE_REMOTE_TABLET , TYPE_REMOTE_TABLET_DOCKED , TYPE_REMOTE_COMPUTER , TYPE_REMOTE_GAME_CONSOLE , TYPE_REMOTE_CAR , TYPE_REMOTE_SMARTWATCH , TYPE_REMOTE_SMARTPHONE , or TYPE_GROUP |
getVolume
public int getVolume ()
Gets the current volume of the route. This may be invalid if the route is not selected.
Returns | |
---|---|
int |
getVolumeHandling
public int getVolumeHandling ()
Gets information about how volume is handled on the route.
Returns | |
---|---|
int |
PLAYBACK_VOLUME_FIXED or PLAYBACK_VOLUME_VARIABLE
Value is PLAYBACK_VOLUME_FIXED , or PLAYBACK_VOLUME_VARIABLE |
getVolumeMax
public int getVolumeMax ()
Gets the maximum volume of the route.
Returns | |
---|---|
int |
hashCode
public int hashCode ()
Returns a hash code value for the object. This method is
supported for the benefit of hash tables such as those provided by
HashMap
.
The general contract of hashCode
is:
- Whenever it is invoked on the same object more than once during
an execution of a Java application, the
hashCode
method must consistently return the same integer, provided no information used inequals
comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application. - If two objects are equal according to the
equals
method, then calling thehashCode
method on each of the two objects must produce the same integer result. - It is not required that if two objects are unequal
according to the
equals
method, then calling thehashCode
method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns | |
---|---|
int |
a hash code value for this object. |
isSystemRoute
public boolean isSystemRoute ()
Returns whether the route is a system route or not.
System routes are media routes directly controlled by the system such as phone speaker, wired headset, and Bluetooth devices.
Returns | |
---|---|
boolean |
toString
public String toString ()
Returns a string representation of the object.
Returns | |
---|---|
String |
a string representation of the object. |
writeToParcel
public void writeToParcel (Parcel dest, int flags)
Flatten this object in to a Parcel.
Parameters | |
---|---|
dest |
Parcel : This value cannot be null . |
flags |
int : Additional flags about how the object should be written.
May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE .
Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE , and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2024-12-18 UTC.