# MediaSessionStatus

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/MediaSessionStatus#nestedclasses)\|[Constants](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#constants)\|[Methods](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#)  

# MediaSessionStatus

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

extends Object


``


`

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

<br />

*** ** * ** ***

Describes the playback status of a media session.

This class is part of the remote playback protocol described by the[MediaControlIntent](https://developer.android.com/reference/android/support/v7/media/MediaControlIntent)class.

When a media session is created, it is initially in the[active](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_ACTIVE)state. When the media session ends normally, it transitions to the[ended](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_ENDED)state. If the media session is invalidated due to another session forcibly taking control of the route, then it transitions to the[invalidated](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_INVALIDATED)state. Refer to the documentation of each state for an explanation of its meaning.

To monitor session status, the application should supply a[PendingIntent](https://developer.android.com/reference/android/app/PendingIntent.html)to use as the[session status update receiver](https://developer.android.com/reference/android/support/v7/media/MediaControlIntent#EXTRA_SESSION_STATUS_UPDATE_RECEIVER)for a given[session start request](https://developer.android.com/reference/android/support/v7/media/MediaControlIntent#ACTION_START_SESSION).

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

<br />

## Summary

|                                                                                                                         ### Nested classes                                                                                                                          ||
|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` class` | [MediaSessionStatus.Builder](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus.Builder) Builder for[media session status objects](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus). |

|                                                                                 ### Constants                                                                                 ||
|-------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `int` | [SESSION_STATE_ACTIVE](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_ACTIVE) Session state: Active.                |
| `int` | [SESSION_STATE_ENDED](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_ENDED) Session state: Ended.                   |
| `int` | [SESSION_STATE_INVALIDATED](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_INVALIDATED) Session state: Invalidated. |

|                                                                                                                                                                                                                       ### Public methods                                                                                                                                                                                                                        ||
|---------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` `[Bundle](https://developer.android.com/reference/android/os/Bundle.html)                                         | ` `[asBundle](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#asBundle())`() ` Converts this object to a bundle for serialization.                                                                                                                                                                     |
| ` static `[MediaSessionStatus](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus) | ` `[fromBundle](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#fromBundle(android.os.Bundle))`(`[Bundle](https://developer.android.com/reference/android/os/Bundle.html)` bundle) ` Creates an instance from a bundle.                                                                                |
| ` `[Bundle](https://developer.android.com/reference/android/os/Bundle.html)                                         | ` `[getExtras](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#getExtras())`() ` Gets a bundle of extras for this status object.                                                                                                                                                                       |
| ` int`                                                                                                              | ` `[getSessionState](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#getSessionState())`() ` Gets the session state.                                                                                                                                                                                   |
| ` long`                                                                                                             | ` `[getTimestamp](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#getTimestamp())`() ` Gets the timestamp associated with the status information in milliseconds since boot in the[elapsedRealtime()](https://developer.android.com/reference/android/os/SystemClock.html#elapsedRealtime())time base. |
| ` boolean`                                                                                                          | ` `[isQueuePaused](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#isQueuePaused())`() ` Returns true if the session's queue is paused.                                                                                                                                                                |
| ` String`                                                                                                           | ` `[toString](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#toString())`() `                                                                                                                                                                                                                         |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#)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() `                    | ||

## Constants

### SESSION_STATE_ACTIVE

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

```
int SESSION_STATE_ACTIVE
```

Session state: Active.

Indicates that the media session is active and in control of the route.

<br />

<br />

Constant Value: 0 (0x00000000)  

### SESSION_STATE_ENDED

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

```
int SESSION_STATE_ENDED
```

Session state: Ended.

Indicates that the media session was ended normally using the[end session](https://developer.android.com/reference/android/support/v7/media/MediaControlIntent#ACTION_END_SESSION)action.

A terminated media session cannot be used anymore. To play more media, the application must start a new session.

<br />

<br />

Constant Value: 1 (0x00000001)  

### SESSION_STATE_INVALIDATED

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

```
int SESSION_STATE_INVALIDATED
```

Session state: Invalidated.

Indicates that the media session was invalidated involuntarily due to another session taking control of the route.

An invalidated media session cannot be used anymore. To play more media, the application must start a new session.

<br />

<br />

Constant Value: 2 (0x00000002)

## 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 /> |

### fromBundle

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

```
MediaSessionStatus fromBundle (Bundle bundle)
```

Creates an instance from a bundle.

<br />

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

|                                                                               Returns                                                                               ||
|-----------------------------------------------------------------------------------------------------------|----------------------------------------------------------|
| [MediaSessionStatus](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus) | The new instance, or null if the bundle was null. <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 status object. 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 /> |

### getSessionState

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

```
int getSessionState ()
```

Gets the session state.

<br />

|                                                                                                                                                                                                                        Returns                                                                                                                                                                                                                        ||
|-------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `int` | The session state. One of[SESSION_STATE_ACTIVE](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_ACTIVE),[SESSION_STATE_ENDED](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_ENDED), or[SESSION_STATE_INVALIDATED](https://developer.android.com/reference/android/support/v7/media/MediaSessionStatus#SESSION_STATE_INVALIDATED). <br /> |

### getTimestamp

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

```
long getTimestamp ()
```

Gets the timestamp associated with the status information in milliseconds since boot in the[elapsedRealtime()](https://developer.android.com/reference/android/os/SystemClock.html#elapsedRealtime())time base.

<br />

|                                                                            Returns                                                                             ||
|--------|--------------------------------------------------------------------------------------------------------------------------------------------------------|
| `long` | The status timestamp in the[elapsedRealtime()](https://developer.android.com/reference/android/os/SystemClock.html#elapsedRealtime())time base. <br /> |

### isQueuePaused

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

```
boolean isQueuePaused ()
```

Returns true if the session's queue is paused.

<br />

|                         Returns                          ||
|-----------|-----------------------------------------------|
| `boolean` | True if the session's queue is paused. <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)