# MediaControllerGlue

added in[version 25.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact com.android.support:leanback-v17:28.0.0-alpha1  
Deprecated since version 27.1.0  
Summary:[Inherited Constants](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#inhconstants)\|[Ctors](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#pubctors)\|[Methods](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#)  

# MediaControllerGlue

| 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


abstract
class
MediaControllerGlue
`  
`


``


``

extends `[PlaybackControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue)`


``


`

|---|---|---|--------------------------------------------------------|
| java.lang.Object                                                ||||
| ↳ | [android.support.v17.leanback.media.PlaybackGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue) |||
|   | ↳ | [android.support.v17.leanback.media.PlaybackControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue) ||
|   |   | ↳ | android.support.v17.leanback.media.MediaControllerGlue |

<br />

*** ** * ** ***

<br />

**This class was deprecated in API level 27.1.0.**   
Use[MediaControllerAdapter](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerAdapter)with[PlaybackTransportControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackTransportControlGlue)or[PlaybackBannerControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackBannerControlGlue).

A helper class for implementing a glue layer for[MediaControllerCompat](https://developer.android.com/reference/android/support/v4/media/session/MediaControllerCompat).

## Summary

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ### Inherited constants                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#)From class` `[android.support.v17.leanback.media.PlaybackControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue)` ` |-------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `int` | [ACTION_CUSTOM_LEFT_FIRST](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#ACTION_CUSTOM_LEFT_FIRST) The adapter key for the first custom control on the left side of the predefined primary controls.    | | `int` | [ACTION_CUSTOM_RIGHT_FIRST](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#ACTION_CUSTOM_RIGHT_FIRST) The adapter key for the first custom control on the right side of the predefined primary controls. | | `int` | [ACTION_FAST_FORWARD](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#ACTION_FAST_FORWARD) The adapter key for the fast forward control.                                                                  | | `int` | [ACTION_PLAY_PAUSE](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#ACTION_PLAY_PAUSE) The adapter key for the play/pause control.                                                                        | | `int` | [ACTION_REWIND](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#ACTION_REWIND) The adapter key for the rewind control.                                                                                    | | `int` | [ACTION_SKIP_TO_NEXT](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#ACTION_SKIP_TO_NEXT) The adapter key for the skip to next control.                                                                  | | `int` | [ACTION_SKIP_TO_PREVIOUS](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#ACTION_SKIP_TO_PREVIOUS) The adapter key for the skip to previous control.                                                      | | `int` | [PLAYBACK_SPEED_FAST_L0](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_FAST_L0) The initial (level 0) fast forward playback speed.                                                       | | `int` | [PLAYBACK_SPEED_FAST_L1](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_FAST_L1) The level 1 fast forward playback speed.                                                                 | | `int` | [PLAYBACK_SPEED_FAST_L2](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_FAST_L2) The level 2 fast forward playback speed.                                                                 | | `int` | [PLAYBACK_SPEED_FAST_L3](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_FAST_L3) The level 3 fast forward playback speed.                                                                 | | `int` | [PLAYBACK_SPEED_FAST_L4](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_FAST_L4) The level 4 fast forward playback speed.                                                                 | | `int` | [PLAYBACK_SPEED_INVALID](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_INVALID) Invalid playback speed.                                                                                  | | `int` | [PLAYBACK_SPEED_NORMAL](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_NORMAL) Speed representing playback state that is playing normally.                                                | | `int` | [PLAYBACK_SPEED_PAUSED](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_PAUSED) Speed representing playback state that is paused.                                                          | |

|                                                                                                                                                                   ### Public constructors                                                                                                                                                                   ||
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| ` `[MediaControllerGlue](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#MediaControllerGlue(android.content.Context, int[], int[]))`(`[Context](https://developer.android.com/reference/android/content/Context.html)` context, int[] fastForwardSpeeds, int[] rewindSpeeds) ` Constructor for the glue. |

|                                                                                                                                                                                                                                                          ### Public methods                                                                                                                                                                                                                                                          ||
|----------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` void`                                                                                                                          | ` `[attachToMediaController](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#attachToMediaController(android.support.v4.media.session.MediaControllerCompat))`(`[MediaControllerCompat](https://developer.android.com/reference/android/support/v4/media/session/MediaControllerCompat)` mediaController) ` Attaches to the given media controller. |
| ` void`                                                                                                                          | ` `[detach](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#detach())`() ` Detaches from the media controller.                                                                                                                                                                                                                                      |
| ` int`                                                                                                                           | ` `[getCurrentPosition](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#getCurrentPosition())`() ` Returns the current position of the media item in milliseconds.                                                                                                                                                                                  |
| ` int`                                                                                                                           | ` `[getCurrentSpeedId](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#getCurrentSpeedId())`() ` Returns the current playback speed.                                                                                                                                                                                                                |
| ` `[Drawable](https://developer.android.com/reference/android/graphics/drawable/Drawable.html)                                   | ` `[getMediaArt](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#getMediaArt())`() ` Returns a bitmap of the art for the media item.                                                                                                                                                                                                                |
| ` final `[MediaControllerCompat](https://developer.android.com/reference/android/support/v4/media/session/MediaControllerCompat) | ` `[getMediaController](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#getMediaController())`() ` Returns the media controller currently attached.                                                                                                                                                                                                 |
| ` int`                                                                                                                           | ` `[getMediaDuration](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#getMediaDuration())`() ` Returns the duration of the media item in milliseconds.                                                                                                                                                                                              |
| ` CharSequence`                                                                                                                  | ` `[getMediaSubtitle](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#getMediaSubtitle())`() ` Returns the subtitle of the media item.                                                                                                                                                                                                              |
| ` CharSequence`                                                                                                                  | ` `[getMediaTitle](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#getMediaTitle())`() ` Returns the title of the media item.                                                                                                                                                                                                                       |
| ` long`                                                                                                                          | ` `[getSupportedActions](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#getSupportedActions())`() ` Returns a bitmask of actions supported by the media player.                                                                                                                                                                                    |
| ` boolean`                                                                                                                       | ` `[hasValidMedia](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#hasValidMedia())`() ` Returns true if there is a valid media item.                                                                                                                                                                                                               |
| ` boolean`                                                                                                                       | ` `[isMediaPlaying](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#isMediaPlaying())`() ` Returns true if media is currently playing.                                                                                                                                                                                                              |
| ` void`                                                                                                                          | ` `[next](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#next())`() ` Goes to the next media item.                                                                                                                                                                                                                                                 |
| ` void`                                                                                                                          | ` `[pause](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#pause())`() ` Pauses the media player.                                                                                                                                                                                                                                                   |
| ` void`                                                                                                                          | ` `[play](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#play(int))`(int speed) ` Start playback at the given speed.                                                                                                                                                                                                                               |
| ` void`                                                                                                                          | ` `[previous](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#previous())`() ` Goes to the previous media item.                                                                                                                                                                                                                                     |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#)From class` `[android.support.v17.leanback.media.PlaybackControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue)` ` |---------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` void`                                                                                                                                     | ` `[enableProgressUpdating](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#enableProgressUpdating(boolean))`(boolean enable) ` Override this to start/stop a runnable to call[updateProgress()](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#updateProgress())at an interval such as[getUpdatePeriod()](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getUpdatePeriod()).                                                                                                                                                                                                        | | ` `[PlaybackControlsRow](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow)                   | ` `[getControlsRow](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getControlsRow())`() ` Returns the playback controls row managed by the glue layer.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | ` `[PlaybackControlsRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRowPresenter) | ` `[getControlsRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getControlsRowPresenter())`() ` *This method was deprecated in API level 25.4.0. PlaybackControlGlue supports any PlaybackRowPresenter, use[getPlaybackRowPresenter()](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getPlaybackRowPresenter()).*                                                                                                                                                                                                                                                                                                      | | ` abstract int`                                                                                                                             | ` `[getCurrentPosition](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getCurrentPosition())`() ` Returns the current position of the media item in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | | ` abstract int`                                                                                                                             | ` `[getCurrentSpeedId](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getCurrentSpeedId())`() ` Returns the current playback speed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | | ` int[]`                                                                                                                                    | ` `[getFastForwardSpeeds](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getFastForwardSpeeds())`() ` Returns the fast forward speeds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | ` abstract `[Drawable](https://developer.android.com/reference/android/graphics/drawable/Drawable.html)                                     | ` `[getMediaArt](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getMediaArt())`() ` Returns a bitmap of the art for the media item.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | | ` abstract int`                                                                                                                             | ` `[getMediaDuration](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getMediaDuration())`() ` Returns the duration of the media item in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | ` abstract CharSequence`                                                                                                                    | ` `[getMediaSubtitle](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getMediaSubtitle())`() ` Returns the subtitle of the media item.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | ` abstract CharSequence`                                                                                                                    | ` `[getMediaTitle](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getMediaTitle())`() ` Returns the title of the media item.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | | ` `[PlaybackRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackRowPresenter)                 | ` `[getPlaybackRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getPlaybackRowPresenter())`() ` Returns the playback row Presenter to be passed to[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)in[onAttachedToHost(PlaybackGlueHost)](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onAttachedToHost(android.support.v17.leanback.media.PlaybackGlueHost)).                                                                                                                                                                                          | | ` int[]`                                                                                                                                    | ` `[getRewindSpeeds](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getRewindSpeeds())`() ` Returns the rewind speeds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | ` abstract long`                                                                                                                            | ` `[getSupportedActions](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getSupportedActions())`() ` Returns a bitmask of actions supported by the media player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | ` int`                                                                                                                                      | ` `[getUpdatePeriod](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#getUpdatePeriod())`() ` Returns the time period in milliseconds that should be used to update the progress.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | ` abstract boolean`                                                                                                                         | ` `[hasValidMedia](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#hasValidMedia())`() ` Returns true if there is a valid media item.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | ` boolean`                                                                                                                                  | ` `[isFadingEnabled](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#isFadingEnabled())`() ` Returns true if controls are set to fade when media is playing.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | | ` abstract boolean`                                                                                                                         | ` `[isMediaPlaying](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#isMediaPlaying())`() ` Returns true if media is currently playing.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | ` boolean`                                                                                                                                  | ` `[isPlaying](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#isPlaying())`() ` Returns true if media is currently playing.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | | ` void`                                                                                                                                     | ` `[onActionClicked](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onActionClicked(android.support.v17.leanback.widget.Action))`(`[Action](https://developer.android.com/reference/android/support/v17/leanback/widget/Action)` action) ` Handles action clicks.                                                                                                                                                                                                                                                                                                                                                                                                                   | | ` void`                                                                                                                                     | ` `[onAttachedToHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onAttachedToHost(android.support.v17.leanback.media.PlaybackGlueHost))`(`[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)` host) ` This method is called attached to associated[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost).                                                                                                                                                                                                                                                 | | ` void`                                                                                                                                     | ` `[onCreateControlsRowAndPresenter](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onCreateControlsRowAndPresenter())`() ` Instantiating a[PlaybackControlsRow](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow)and corresponding[PlaybackControlsRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRowPresenter).                                                                                                                                                                                                                                                         | | ` void`                                                                                                                                     | ` `[onCreatePrimaryActions](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onCreatePrimaryActions(android.support.v17.leanback.widget.SparseArrayObjectAdapter))`(`[SparseArrayObjectAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/SparseArrayObjectAdapter)` primaryActionsAdapter) ` May be overridden to add primary actions to the adapter.                                                                                                                                                                                                                                                                                              | | ` void`                                                                                                                                     | ` `[onCreateSecondaryActions](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onCreateSecondaryActions(android.support.v17.leanback.widget.ArrayObjectAdapter))`(`[ArrayObjectAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/ArrayObjectAdapter)` secondaryActionsAdapter) ` May be overridden to add secondary actions to the adapter.                                                                                                                                                                                                                                                                                                        | | ` void`                                                                                                                                     | ` `[onDetachedFromHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onDetachedFromHost())`() ` This method is called when current associated[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)is attached to a different[PlaybackGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue)or[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)is destroyed .                                                                                                                                                      | | ` void`                                                                                                                                     | ` `[onHostStart](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onHostStart())`() ` This method is called when {@link PlaybackGlueHost is started.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | ` void`                                                                                                                                     | ` `[onHostStop](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onHostStop())`() ` This method is called when {@link PlaybackGlueHost is stopped.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | | ` boolean`                                                                                                                                  | ` `[onKey](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onKey(android.view.View, int, android.view.KeyEvent))`(`[View](https://developer.android.com/reference/android/view/View.html)` v, int keyCode, `[KeyEvent](https://developer.android.com/reference/android/view/KeyEvent.html)` event) ` Handles key events and returns true if handled.                                                                                                                                                                                                                                                                                                                                 | | ` void`                                                                                                                                     | ` `[onMetadataChanged](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onMetadataChanged())`() ` Must be called appropriately by a subclass when the metadata state has changed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | ` void`                                                                                                                                     | ` `[onStateChanged](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onStateChanged())`() ` Must be called appropriately by a subclass when the playback state has changed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | | ` void`                                                                                                                                     | ` `[play](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#play(int))`(int speed) ` Start playback at the given speed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | ` final void`                                                                                                                               | ` `[play](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#play())`() ` Starts the media player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | ` void`                                                                                                                                     | ` `[setControlsRow](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#setControlsRow(android.support.v17.leanback.widget.PlaybackControlsRow))`(`[PlaybackControlsRow](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow)` controlsRow) ` Sets the controls row to be managed by the glue layer.                                                                                                                                                                                                                                                                                                                                         | | ` void`                                                                                                                                     | ` `[setControlsRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#setControlsRowPresenter(android.support.v17.leanback.widget.PlaybackControlsRowPresenter))`(`[PlaybackControlsRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRowPresenter)` presenter) ` *This method was deprecated in API level 25.4.0. PlaybackControlGlue supports any PlaybackRowPresenter, use[setPlaybackRowPresenter(PlaybackRowPresenter)](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#setPlaybackRowPresenter(android.support.v17.leanback.widget.PlaybackRowPresenter)).*      | | ` void`                                                                                                                                     | ` `[setFadingEnabled](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#setFadingEnabled(boolean))`(boolean enable) ` Sets the controls to fade after a timeout when media is playing.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | | ` void`                                                                                                                                     | ` `[setPlaybackRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#setPlaybackRowPresenter(android.support.v17.leanback.widget.PlaybackRowPresenter))`(`[PlaybackRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackRowPresenter)` presenter) ` Sets the controls row Presenter to be passed to[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)in[onAttachedToHost(PlaybackGlueHost)](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#onAttachedToHost(android.support.v17.leanback.media.PlaybackGlueHost)). | | ` void`                                                                                                                                     | ` `[updateProgress](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#updateProgress())`() ` Updates the progress bar based on the current media playback position.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | ||
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#)From class` `[android.support.v17.leanback.media.PlaybackGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue)` ` |--------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` void`                                                                                                                                          | ` `[addPlayerCallback](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#addPlayerCallback(android.support.v17.leanback.media.PlaybackGlue.PlayerCallback))`(`[PlaybackGlue.PlayerCallback](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue.PlayerCallback)` playerCallback) ` Add a PlayerCallback.                                                                                                                                                                                                                                            | | ` `[Context](https://developer.android.com/reference/android/content/Context.html)                                                               | ` `[getContext](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#getContext())`() ` Returns the context.                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | ` `[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)                               | ` `[getHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#getHost())`() `                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | ` List<`[PlaybackGlue.PlayerCallback](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue.PlayerCallback)`>` | ` `[getPlayerCallbacks](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#getPlayerCallbacks())`() `                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | | ` boolean`                                                                                                                                       | ` `[isPlaying](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#isPlaying())`() ` Returns true if media is currently playing.                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | ` boolean`                                                                                                                                       | ` `[isPrepared](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#isPrepared())`() ` Returns true when the media player is prepared to start media playback.                                                                                                                                                                                                                                                                                                                                                                                                                            | | ` void`                                                                                                                                          | ` `[next](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#next())`() ` Goes to the next media item.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | | ` void`                                                                                                                                          | ` `[onAttachedToHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#onAttachedToHost(android.support.v17.leanback.media.PlaybackGlueHost))`(`[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)` host) ` This method is called attached to associated[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost).                                                                                                                                                  | | ` void`                                                                                                                                          | ` `[onDetachedFromHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#onDetachedFromHost())`() ` This method is called when current associated[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)is attached to a different[PlaybackGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue)or[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)is destroyed .                                                       | | ` void`                                                                                                                                          | ` `[onHostPause](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#onHostPause())`() ` This method is called when {@link PlaybackGlueHost is paused.                                                                                                                                                                                                                                                                                                                                                                                                                                    | | ` void`                                                                                                                                          | ` `[onHostResume](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#onHostResume())`() ` This method is called when {@link PlaybackGlueHost is resumed.                                                                                                                                                                                                                                                                                                                                                                                                                                 | | ` void`                                                                                                                                          | ` `[onHostStart](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#onHostStart())`() ` This method is called when {@link PlaybackGlueHost is started.                                                                                                                                                                                                                                                                                                                                                                                                                                   | | ` void`                                                                                                                                          | ` `[onHostStop](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#onHostStop())`() ` This method is called when {@link PlaybackGlueHost is stopped.                                                                                                                                                                                                                                                                                                                                                                                                                                     | | ` void`                                                                                                                                          | ` `[pause](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#pause())`() ` Pauses the media player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | ` void`                                                                                                                                          | ` `[play](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#play())`() ` Starts the media player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | | ` void`                                                                                                                                          | ` `[playWhenPrepared](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#playWhenPrepared())`() ` Starts play when[isPrepared()](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#isPrepared())becomes true.                                                                                                                                                                                                                                                                                                                                      | | ` void`                                                                                                                                          | ` `[previous](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#previous())`() ` Goes to the previous media item.                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | | ` void`                                                                                                                                          | ` `[removePlayerCallback](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#removePlayerCallback(android.support.v17.leanback.media.PlaybackGlue.PlayerCallback))`(`[PlaybackGlue.PlayerCallback](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue.PlayerCallback)` callback) ` Remove a PlayerCallback.                                                                                                                                                                                                                                         | | ` final void`                                                                                                                                    | ` `[setHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue#setHost(android.support.v17.leanback.media.PlaybackGlueHost))`(`[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)` host) ` This method is used to associate a PlaybackGlue with the[PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)which provides UI and optional[SurfaceHolderGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/SurfaceHolderGlueHost). | ||
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#)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() `                    | ||
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#)From interface` `[android.support.v17.leanback.widget.OnActionClickedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnActionClickedListener)` ` |------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` abstract void` | ` `[onActionClicked](https://developer.android.com/reference/android/support/v17/leanback/widget/OnActionClickedListener#onActionClicked(android.support.v17.leanback.widget.Action))`(`[Action](https://developer.android.com/reference/android/support/v17/leanback/widget/Action)` action) ` Callback fired when the host fragment receives an action. | ||
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue#)From interface` `[android.view.View.OnKeyListener](https://developer.android.com/reference/android/view/View.OnKeyListener.html)` ` |---------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` abstract boolean` | ` onKey(`[View](https://developer.android.com/reference/android/view/View.html)` arg0, int arg1, `[KeyEvent](https://developer.android.com/reference/android/view/KeyEvent.html)` arg2) ` | ||

## Public constructors

### MediaControllerGlue

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

```
MediaControllerGlue (Context context, 
                int[] fastForwardSpeeds, 
                int[] rewindSpeeds)
```

Constructor for the glue.

<br />

|                                Parameters                                 ||
|---------------------|------------------------------------------------------|
| `fastForwardSpeeds` | `int`: Array of seek speeds for fast forward. <br /> |
| `rewindSpeeds`      | `int`: Array of seek speeds for rewind. <br />       |

## Public methods

### attachToMediaController

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

```
void attachToMediaController (MediaControllerCompat mediaController)
```

Attaches to the given media controller.

<br />

|                    Parameters                     ||
|-------------------|--------------------------------|
| `mediaController` | `MediaControllerCompat` <br /> |

### detach

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

```
void detach ()
```

Detaches from the media controller. Must be called when the object is no longer needed.

<br />

### getCurrentPosition

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

```
int getCurrentPosition ()
```

Returns the current position of the media item in milliseconds.

<br />

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

### getCurrentSpeedId

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

```
int getCurrentSpeedId ()
```

Returns the current playback speed. When playing normally,[PLAYBACK_SPEED_NORMAL](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_NORMAL)should be returned.

<br />

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

### getMediaArt

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

```
Drawable getMediaArt ()
```

Returns a bitmap of the art for the media item.

<br />

|                                               Returns                                               ||
|---------------------------------------------------------------------------------------------|--------|
| [Drawable](https://developer.android.com/reference/android/graphics/drawable/Drawable.html) | <br /> |

### getMediaController

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

```
MediaControllerCompat getMediaController ()
```

Returns the media controller currently attached.

<br />

|                                                             Returns                                                             ||
|-------------------------------------------------------------------------------------------------------------------------|--------|
| [MediaControllerCompat](https://developer.android.com/reference/android/support/v4/media/session/MediaControllerCompat) | <br /> |

### getMediaDuration

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

```
int getMediaDuration ()
```

Returns the duration of the media item in milliseconds.

<br />

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

### getMediaSubtitle

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

```
CharSequence getMediaSubtitle ()
```

Returns the subtitle of the media item.

<br />

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

### getMediaTitle

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

```
CharSequence getMediaTitle ()
```

Returns the title of the media item.

<br />

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

### getSupportedActions

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

```
long getSupportedActions ()
```

Returns a bitmask of actions supported by the media player.

<br />

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

### hasValidMedia

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

```
boolean hasValidMedia ()
```

Returns true if there is a valid media item.

<br />

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

### isMediaPlaying

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

```
boolean isMediaPlaying ()
```

Returns true if media is currently playing.

<br />

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

### next

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

```
void next ()
```

Goes to the next media item. This method is optional.

<br />

### pause

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

```
void pause ()
```

Pauses the media player.

<br />

### play

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

```
void play (int speed)
```

Start playback at the given speed.

<br />

|                                                                                                                                                 Parameters                                                                                                                                                 ||
|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `speed` | `int`: The desired playback speed. For normal playback this will be[PLAYBACK_SPEED_NORMAL](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue#PLAYBACK_SPEED_NORMAL); higher positive values for fast forward, and negative values for rewind. <br /> |

### previous

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

```
void previous ()
```

Goes to the previous media item. This method is optional.

<br />

-

  ## Interfaces

  - [SurfaceHolderGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/SurfaceHolderGlueHost)
-

  ## Classes

  - [MediaControllerAdapter](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerAdapter)
  - [MediaControllerGlue](https://developer.android.com/reference/android/support/v17/leanback/media/MediaControllerGlue)
  - [MediaPlayerAdapter](https://developer.android.com/reference/android/support/v17/leanback/media/MediaPlayerAdapter)
  - [PlaybackBannerControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackBannerControlGlue)
  - [PlaybackBaseControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackBaseControlGlue)
  - [PlaybackControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackControlGlue)
  - [PlaybackGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue)
  - [PlaybackGlue.PlayerCallback](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlue.PlayerCallback)
  - [PlaybackGlueHost](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost)
  - [PlaybackGlueHost.HostCallback](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost.HostCallback)
  - [PlaybackGlueHost.PlayerCallback](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackGlueHost.PlayerCallback)
  - [PlaybackTransportControlGlue](https://developer.android.com/reference/android/support/v17/leanback/media/PlaybackTransportControlGlue)
  - [PlayerAdapter](https://developer.android.com/reference/android/support/v17/leanback/media/PlayerAdapter)
  - [PlayerAdapter.Callback](https://developer.android.com/reference/android/support/v17/leanback/media/PlayerAdapter.Callback)