MediaSession2
open class MediaSession2 : AutoCloseable
| kotlin.Any | |
| ↳ | android.media.MediaSession2 |
This API is not generally intended for third party application developers. Use the AndroidX Media3 session Library for consistent behavior across all devices.
Allows a media app to expose its transport controls and playback information in a process to other processes including the Android framework and other apps.
Summary
| Nested classes | |
|---|---|
| This API is not generally intended for third party application developers. | |
| This API is not generally intended for third party application developers. | |
| abstract | This API is not generally intended for third party application developers. |
| Public methods | |
|---|---|
| open Unit | broadcastSessionCommand(command: Session2Command, args: Bundle?)Broadcasts a session command to all the connected controllers |
| open Unit | cancelSessionCommand(controller: MediaSession2.ControllerInfo, token: Any)Cancels the session command previously sent. |
| open Unit | close() |
| open MutableList<MediaSession2.ControllerInfo!> | Gets the list of the connected controllers |
| open String | getId()Returns the session ID |
| open Session2Token | getToken()Returns the |
| open Boolean | Returns whether the playback is active (i.e. playing something) |
| open Any | sendSessionCommand(controller: MediaSession2.ControllerInfo, command: Session2Command, args: Bundle?)Sends a session command to a specific controller |
| open Unit | setPlaybackActive(playbackActive: Boolean)Sets whether the playback is active (i.e. playing something) |
Public methods
broadcastSessionCommand
open fun broadcastSessionCommand(
command: Session2Command,
args: Bundle?
): Unit
Broadcasts a session command to all the connected controllers
| Parameters | |
|---|---|
command | Session2Command: the session command This value cannot be null. |
args | Bundle?: optional arguments This value may be null. |
cancelSessionCommand
open fun cancelSessionCommand(
controller: MediaSession2.ControllerInfo,
token: Any
): Unit
Cancels the session command previously sent.
| Parameters | |
|---|---|
controller | MediaSession2.ControllerInfo: the controller to get the session command This value cannot be null. |
token | Any: the token which is returned from sendSessionCommand. This value cannot be null. |
close
open fun close(): Unit
| Exceptions | |
|---|---|
java.lang.Exception | if this resource cannot be closed |
getConnectedControllers
open fun getConnectedControllers(): MutableList<MediaSession2.ControllerInfo!>
Gets the list of the connected controllers
| Return | |
|---|---|
MutableList<MediaSession2.ControllerInfo!> | list of the connected controllers. This value cannot be null. |
getId
open fun getId(): String
Returns the session ID
| Return | |
|---|---|
String | This value cannot be null. |
getToken
open fun getToken(): Session2Token
Returns the Session2Token for creating MediaController2.
| Return | |
|---|---|
Session2Token | This value cannot be null. |
isPlaybackActive
open fun isPlaybackActive(): Boolean
Returns whether the playback is active (i.e. playing something)
| Return | |
|---|---|
Boolean | true if the playback active, false otherwise. |
sendSessionCommand
open fun sendSessionCommand(
controller: MediaSession2.ControllerInfo,
command: Session2Command,
args: Bundle?
): Any
Sends a session command to a specific controller
| Parameters | |
|---|---|
controller | MediaSession2.ControllerInfo: the controller to get the session command This value cannot be null. |
command | Session2Command: the session command This value cannot be null. |
args | Bundle?: optional arguments This value may be null. |
| Return | |
|---|---|
Any | a token which will be sent together in SessionCallback.onCommandResult when its result is received. This value cannot be null. |
setPlaybackActive
open fun setPlaybackActive(playbackActive: Boolean): Unit
Sets whether the playback is active (i.e. playing something)
| Parameters | |
|---|---|
playbackActive | Boolean: true if the playback active, false otherwise. |