added in version 22.1.0
belongs to Maven artifact


public static abstract class MediaRouteProvider.RouteController
extends Object


Provides control over a particular route.

The media router obtains a route controller for a route whenever it needs to control a route. When a route is selected, the media router invokes the onSelect() method of its route controller. While selected, the media router may call other methods of the route controller to request that it perform certain actions to the route. When a route is unselected, the media router invokes the onUnselect() method of its route controller. When the media route no longer needs the route controller it will invoke the onRelease() method to allow the route controller to free its resources.

There may be multiple route controllers simultaneously active for the same route. Each route controller will be released separately.

All operations on the route controller are asynchronous and results are communicated via callbacks.


Public constructors


Public methods

boolean onControlRequest(Intent intent, MediaRouter.ControlRequestCallback callback)

Performs a media control request asynchronously on behalf of the route.

void onRelease()

Releases the route controller, allowing it to free its resources.

void onSelect()

Selects the route.

void onSetVolume(int volume)

Requests to set the volume of the route.

void onUnselect()

Unselects the route.

void onUnselect(int reason)

Unselects the route and provides a reason.

void onUpdateVolume(int delta)

Requests an incremental volume update for the route.

Inherited methods

From class java.lang.Object

Public constructors


added in version 22.1.0
MediaRouteProvider.RouteController ()

Public methods


added in version 22.1.0