mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00

Controller and browsers are typically obtained with Futures.addCallback(future, getMainExecutor()), which triggers the onSuccess callback with a message post. We currently send the initial media button preferences inline, causing the callback in MediaController.Listener.onMediaButtonPreferencesChanged to arrive before the FutureCallback.onSuccess callback. In the test controller app, which causes crashed when connecting to existing sessions for example. We can make this more robust by also posting the initial update of the media button preferences. PiperOrigin-RevId: 726923498
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.