tonihei f9617e1f8d Clear surface from previous player when assigning a new player
The surface must only be used by one player at a time. To ensure
that, we can keep a reference to the previously used player
and clear its surface reference before assigning to a new one.

Note that we do not need to clear the surface in onDispose
of a DisposableEffect because the lifecycle management of the
surface is moved to the Player and the Player takes care of
unregistering its surface reference as soon as the surface is
destroyed (which happens when the AndroidView element is no longer
is the Composable tree).

PiperOrigin-RevId: 745558414
2025-04-09 06:14:47 -07:00
..

UI module written using Jetpack Compose

Provides UI-related functionality such as Composable functions and Compose State classes. For example, the Surface for rendering media playback, UI state classes for widgets, buttons, and other interactive components.

Getting the module

The easiest way to use the module is to add it as a gradle dependency:

implementation 'androidx.media3:media3-ui-compose: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.