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