# MediaRouteDescriptor

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact com.android.support:mediarouter-v7:28.0.0-alpha1  
Summary:[Nested Classes](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#nestedclasses)\|[Methods](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#)  

# MediaRouteDescriptor

| This package is part of the Android[support library](https://developer.android.com/topic/libraries/support-library)which is no longer maintained. The support library has been superseded by[AndroidX](https://developer.android.com/jetpack/androidx)which is part of[Jetpack](https://developer.android.com/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider[migrating](https://developer.android.com/jetpack/androidx/migrate)existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library[class mappings](https://developer.android.com/jetpack/androidx/migrate/class-mappings).

`
public

final

class
MediaRouteDescriptor
`  
`

extends Object


``


`

|---|-----------------------------------------------|
| java.lang.Object                                 ||
| ↳ | android.support.v7.media.MediaRouteDescriptor |

<br />

*** ** * ** ***

Describes the properties of a route.

Each route is uniquely identified by an opaque id string. This token may take any form as long as it is unique within the media route provider.

This object is immutable once created using a[MediaRouteDescriptor.Builder](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor.Builder)instance.

<br />

## Summary

|                                                                                                                          ### Nested classes                                                                                                                          ||
|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` class` | [MediaRouteDescriptor.Builder](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor.Builder) Builder for[media route descriptors](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor). |

|                                                                                                                                                                                                                  ### Public methods                                                                                                                                                                                                                  ||
|-------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` `[Bundle](https://developer.android.com/reference/android/os/Bundle.html)                                             | ` `[asBundle](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#asBundle())`() ` Converts this object to a bundle for serialization.                                                                                                                                                    |
| ` boolean`                                                                                                              | ` `[canDisconnectAndKeepPlaying](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#canDisconnectAndKeepPlaying())`() ` Gets whether the route can be disconnected without stopping playback.                                                                                            |
| ` static `[MediaRouteDescriptor](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor) | ` `[fromBundle](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#fromBundle(android.os.Bundle))`(`[Bundle](https://developer.android.com/reference/android/os/Bundle.html)` bundle) ` Creates an instance from a bundle.                                                               |
| ` int`                                                                                                                  | ` `[getConnectionState](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getConnectionState())`() ` Gets the connection state of the route.                                                                                                                                            |
| ` List<`[IntentFilter](https://developer.android.com/reference/android/content/IntentFilter.html)`>`                    | ` `[getControlFilters](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getControlFilters())`() ` Gets the route's[media control intent](https://developer.android.com/reference/android/support/v7/media/MediaControlIntent)filters.                                                  |
| ` String`                                                                                                               | ` `[getDescription](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getDescription())`() ` Gets the user-visible description of the route.                                                                                                                                            |
| ` int`                                                                                                                  | ` `[getDeviceType](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getDeviceType())`() ` Gets the type of the receiver device associated with this route.                                                                                                                             |
| ` `[Bundle](https://developer.android.com/reference/android/os/Bundle.html)                                             | ` `[getExtras](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getExtras())`() ` Gets a bundle of extras for this route descriptor.                                                                                                                                                   |
| ` `[Uri](https://developer.android.com/reference/android/net/Uri.html)                                                  | ` `[getIconUri](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getIconUri())`() ` Gets the URI of the icon representing this route.                                                                                                                                                  |
| ` String`                                                                                                               | ` `[getId](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getId())`() ` Gets the unique id of the route.                                                                                                                                                                             |
| ` String`                                                                                                               | ` `[getName](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getName())`() ` Gets the user-visible name of the route.                                                                                                                                                                 |
| ` int`                                                                                                                  | ` `[getPlaybackStream](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getPlaybackStream())`() ` Gets the route's playback stream.                                                                                                                                                    |
| ` int`                                                                                                                  | ` `[getPlaybackType](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getPlaybackType())`() ` Gets the type of playback associated with this route.                                                                                                                                    |
| ` int`                                                                                                                  | ` `[getPresentationDisplayId](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getPresentationDisplayId())`() ` Gets the route's presentation display id, or -1 if none.                                                                                                               |
| ` `[IntentSender](https://developer.android.com/reference/android/content/IntentSender.html)                            | ` `[getSettingsActivity](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getSettingsActivity())`() ` Gets an[IntentSender](https://developer.android.com/reference/android/content/IntentSender.html)for starting a settings activity for this route.                                 |
| ` int`                                                                                                                  | ` `[getVolume](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getVolume())`() ` Gets the route's current volume, or 0 if unknown.                                                                                                                                                    |
| ` int`                                                                                                                  | ` `[getVolumeHandling](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getVolumeHandling())`() ` Gets information about how volume is handled on the route.                                                                                                                           |
| ` int`                                                                                                                  | ` `[getVolumeMax](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getVolumeMax())`() ` Gets the route's maximum volume, or 0 if unknown.                                                                                                                                              |
| ` boolean`                                                                                                              | ` `[isConnecting](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#isConnecting())`() ` *This method was deprecated in API level 24.1.0. Use[getConnectionState()](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getConnectionState())instead* |
| ` boolean`                                                                                                              | ` `[isEnabled](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#isEnabled())`() ` Gets whether the route is enabled.                                                                                                                                                                   |
| ` boolean`                                                                                                              | ` `[isValid](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#isValid())`() ` Returns true if the route descriptor has all of the required fields.                                                                                                                                     |
| ` String`                                                                                                               | ` `[toString](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#toString())`() `                                                                                                                                                                                                        |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#)From class` java.lang.Object ` |-------------------|-------------------------------| | ` Object`         | ` clone() `                   | | ` boolean`        | ` equals(Object arg0) `       | | ` void`           | ` finalize() `                | | ` final Class<?>` | ` getClass() `                | | ` int`            | ` hashCode() `                | | ` final void`     | ` notify() `                  | | ` final void`     | ` notifyAll() `               | | ` String`         | ` toString() `                | | ` final void`     | ` wait(long arg0, int arg1) ` | | ` final void`     | ` wait(long arg0) `           | | ` final void`     | ` wait() `                    | ||

## Public methods

### asBundle

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Bundle asBundle ()
```

Converts this object to a bundle for serialization.

<br />

|                                                               Returns                                                                ||
|--------------------------------------------------------------------------|------------------------------------------------------------|
| [Bundle](https://developer.android.com/reference/android/os/Bundle.html) | The contents of the object represented as a bundle. <br /> |

### canDisconnectAndKeepPlaying

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean canDisconnectAndKeepPlaying ()
```

Gets whether the route can be disconnected without stopping playback.

The route can normally be disconnected without stopping playback when the destination device on the route is connected to two or more source devices. The route provider should update the route immediately when the number of connected devices changes.

To specify that the route should disconnect without stopping use[unselect(int)](https://developer.android.com/reference/android/support/v7/media/MediaRouter#unselect(int))with[UNSELECT_REASON_DISCONNECTED](https://developer.android.com/reference/android/support/v7/media/MediaRouter#UNSELECT_REASON_DISCONNECTED).

<br />

<br />

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### fromBundle

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
MediaRouteDescriptor fromBundle (Bundle bundle)
```

Creates an instance from a bundle.

<br />

|                       Parameters                        ||
|----------|-----------------------------------------------|
| `bundle` | `Bundle`: The bundle, or null if none. <br /> |

|                                                                                 Returns                                                                                 ||
|---------------------------------------------------------------------------------------------------------------|----------------------------------------------------------|
| [MediaRouteDescriptor](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor) | The new instance, or null if the bundle was null. <br /> |

### getConnectionState

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getConnectionState ()
```

Gets the connection state of the route.

<br />

|                                                                                                                                                                                                                                                   Returns                                                                                                                                                                                                                                                    ||
|-------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `int` | The connection state of this route:[CONNECTION_STATE_DISCONNECTED](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#CONNECTION_STATE_DISCONNECTED),[CONNECTION_STATE_CONNECTING](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#CONNECTION_STATE_CONNECTING), or[CONNECTION_STATE_CONNECTED](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#CONNECTION_STATE_CONNECTED). <br /> |

### getControlFilters

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
List<IntentFilter> getControlFilters ()
```

Gets the route's[media control intent](https://developer.android.com/reference/android/support/v7/media/MediaControlIntent)filters.

<br />

|                                                   Returns                                                   ||
|-----------------------------------------------------------------------------------------------------|--------|
| `List<`[IntentFilter](https://developer.android.com/reference/android/content/IntentFilter.html)`>` | <br /> |

### getDescription

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
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.

<br />

<br />

|     Returns      ||
|----------|--------|
| `String` | <br /> |

### getDeviceType

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getDeviceType ()
```

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

<br />

|                                                                                                                                                               Returns                                                                                                                                                                ||
|-------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `int` | The type of the receiver device associated with this route:[DEVICE_TYPE_TV](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#DEVICE_TYPE_TV)or[DEVICE_TYPE_SPEAKER](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#DEVICE_TYPE_SPEAKER). <br /> |

### getExtras

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Bundle getExtras ()
```

Gets a bundle of extras for this route descriptor. The extras will be ignored by the media router but they may be used by applications.

<br />

|                                     Returns                                      ||
|--------------------------------------------------------------------------|--------|
| [Bundle](https://developer.android.com/reference/android/os/Bundle.html) | <br /> |

### getIconUri

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Uri getIconUri ()
```

Gets the URI of the icon representing this route.

This icon will be used in picker UIs if available.

<br />

<br />

|                                   Returns                                   ||
|---------------------------------------------------------------------|--------|
| [Uri](https://developer.android.com/reference/android/net/Uri.html) | <br /> |

### getId

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
String getId ()
```

Gets the unique id of the route.

The route id associated with a route descriptor functions as a stable identifier for the route and must be unique among all routes offered by the provider.

<br />

<br />

|     Returns      ||
|----------|--------|
| `String` | <br /> |

### getName

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
String getName ()
```

Gets the user-visible name of the route.

The route name identifies the destination represented by the route. It may be a user-supplied name, an alias, or device serial number.

<br />

<br />

|     Returns      ||
|----------|--------|
| `String` | <br /> |

### getPlaybackStream

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getPlaybackStream ()
```

Gets the route's playback stream.

<br />

|    Returns    ||
|-------|--------|
| `int` | <br /> |

### getPlaybackType

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getPlaybackType ()
```

Gets the type of playback associated with this route.

<br />

|                                                                                                                                                                Returns                                                                                                                                                                ||
|-------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `int` | The type of playback associated with this route:[PLAYBACK_TYPE_LOCAL](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#PLAYBACK_TYPE_LOCAL)or[PLAYBACK_TYPE_REMOTE](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#PLAYBACK_TYPE_REMOTE). <br /> |

### getPresentationDisplayId

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getPresentationDisplayId ()
```

Gets the route's presentation display id, or -1 if none.

<br />

|    Returns    ||
|-------|--------|
| `int` | <br /> |

### getSettingsActivity

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
IntentSender getSettingsActivity ()
```

Gets an[IntentSender](https://developer.android.com/reference/android/content/IntentSender.html)for starting a settings activity for this route. The activity may have specific route settings or general settings for the connected device or route provider.

<br />

|                                                                                                          Returns                                                                                                           ||
|-------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------|
| [IntentSender](https://developer.android.com/reference/android/content/IntentSender.html) | An[IntentSender](https://developer.android.com/reference/android/content/IntentSender.html)to start a settings activity. <br /> |

### getVolume

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getVolume ()
```

Gets the route's current volume, or 0 if unknown.

<br />

|    Returns    ||
|-------|--------|
| `int` | <br /> |

### getVolumeHandling

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getVolumeHandling ()
```

Gets information about how volume is handled on the route.

<br />

|                                                                                                                                                               Returns                                                                                                                                                                ||
|-------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `int` | How volume is handled on the route:[PLAYBACK_VOLUME_FIXED](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#PLAYBACK_VOLUME_FIXED)or[PLAYBACK_VOLUME_VARIABLE](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo#PLAYBACK_VOLUME_VARIABLE). <br /> |

### getVolumeMax

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getVolumeMax ()
```

Gets the route's maximum volume, or 0 if unknown.

<br />

|    Returns    ||
|-------|--------|
| `int` | <br /> |

### isConnecting

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean isConnecting ()
```

<br />

**This method was deprecated in API level 24.1.0.**   
Use[getConnectionState()](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor#getConnectionState())instead

Gets whether the route is connecting.

<br />

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### isEnabled

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean isEnabled ()
```

Gets whether the route is enabled.

<br />

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### isValid

added in[version 22.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean isValid ()
```

Returns true if the route descriptor has all of the required fields.

<br />

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### toString

```
String toString ()
```

<br />

<br />

|     Returns      ||
|----------|--------|
| `String` | <br /> |

-

  ## Interfaces

  - [RemotePlaybackClient.OnMessageReceivedListener](https://developer.android.com/reference/android/support/v7/media/RemotePlaybackClient.OnMessageReceivedListener)
-

  ## Classes

  - [MediaControlIntent](https://developer.android.com/reference/android/support/v7/media/MediaControlIntent)
  - [MediaItemMetadata](https://developer.android.com/reference/android/support/v7/media/MediaItemMetadata)
  - [MediaItemStatus](https://developer.android.com/reference/android/support/v7/media/MediaItemStatus)
  - [MediaItemStatus.Builder](https://developer.android.com/reference/android/support/v7/media/MediaItemStatus.Builder)
  - [MediaRouteDescriptor](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor)
  - [MediaRouteDescriptor.Builder](https://developer.android.com/reference/android/support/v7/media/MediaRouteDescriptor.Builder)
  - [MediaRouteDiscoveryRequest](https://developer.android.com/reference/android/support/v7/media/MediaRouteDiscoveryRequest)
  - [MediaRouteProvider](https://developer.android.com/reference/android/support/v7/media/MediaRouteProvider)
  - [MediaRouteProvider.Callback](https://developer.android.com/reference/android/support/v7/media/MediaRouteProvider.Callback)
  - [MediaRouteProvider.ProviderMetadata](https://developer.android.com/reference/android/support/v7/media/MediaRouteProvider.ProviderMetadata)
  - [MediaRouteProvider.RouteController](https://developer.android.com/reference/android/support/v7/media/MediaRouteProvider.RouteController)
  - [MediaRouteProviderDescriptor](https://developer.android.com/reference/android/support/v7/media/MediaRouteProviderDescriptor)
  - [MediaRouteProviderDescriptor.Builder](https://developer.android.com/reference/android/support/v7/media/MediaRouteProviderDescriptor.Builder)
  - [MediaRouteProviderService](https://developer.android.com/reference/android/support/v7/media/MediaRouteProviderService)
  - [MediaRouter](https://developer.android.com/reference/android/support/v7/media/MediaRouter)
  - [MediaRouter.Callback](https://developer.android.com/reference/android/support/v7/media/MediaRouter.Callback)
  - [MediaRouter.ControlRequestCallback](https://developer.android.com/reference/android/support/v7/media/MediaRouter.ControlRequestCallback)
  - [MediaRouter.ProviderInfo](https://developer.android.com/reference/android/support/v7/media/MediaRouter.ProviderInfo)
  - [MediaRouter.RouteInfo](https://developer.android.com/reference/android/support/v7/media/MediaRouter.RouteInfo)
  - [MediaRouteSelector](https://developer.android.com/reference/android/support/v7/media/MediaRouteSelector)
  - [MediaRouteSelector.Builder](https://developer.android.com/reference/android/support/v7/media/MediaRouteSelector.Builder)
  - [MediaSessionStatus](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus)
  - [MediaSessionStatus.Builder](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus.Builder)
  - [RemotePlaybackClient](https://developer.android.com/reference/android/support/v7/media/RemotePlaybackClient)
  - [RemotePlaybackClient.ActionCallback](https://developer.android.com/reference/android/support/v7/media/RemotePlaybackClient.ActionCallback)
  - [RemotePlaybackClient.ItemActionCallback](https://developer.android.com/reference/android/support/v7/media/RemotePlaybackClient.ItemActionCallback)
  - [RemotePlaybackClient.SessionActionCallback](https://developer.android.com/reference/android/support/v7/media/RemotePlaybackClient.SessionActionCallback)
  - [RemotePlaybackClient.StatusCallback](https://developer.android.com/reference/android/support/v7/media/RemotePlaybackClient.StatusCallback)