
When calling `MediaController.getCommandButtonForMediaItem(MediaItem)` command buttons with custom commands that are not available shouldn't be advertised to the controller when connected to a Media3 session. In contrast, when connected to a legacy session, available commands are not enforced when advertising commands. Similarly, when sending a custom commands that is referenced by a command button for media items, sending is permitted without the command being available. This is required because available commands match to custom actions in `PlaybackStateCompat` of the legacy session. Adding commands for media items to custom action of the `PlaybackStateCompat` would interfere with other use cases. Issue: androidx/media#1474 #cherrypick PiperOrigin-RevId: 683717723
Session module
This module provides media session functionality through which media information and controls can be exposed to the Android platform, as well as to other processes and applications.
Getting the module
The easiest way to get the module is to add it as a gradle dependency:
implementation 'androidx.media3:media3-session:1.X.X'
where 1.X.X
is the version, which must match the version of the other media
modules being used.
Alternatively, you can clone this GitHub project and depend on the module locally. Instructions for doing this can be found in the top level README.