
The existing NullableType has been deprecated 5 years ago and causes crashes in Kotlin apps because Kotlin doesn't recognize this annotation as a nullable type annotation. While we can't align on a single @Nullable annotation yet, we can at least replace this one by JSR305's @Nonnull(MAYBE) as it fulfils all requirements, including full Kotlin compatiblity. To avoid the cumbersome name, we can redefine it as our own @NullableType annotation. (We can't use @Nullable to avoid name clashes with the main @Nullable annotation from AndroidX) Issue: google/ExoPlayer#6792 PiperOrigin-RevId: 540497469
Cast module
This module provides a Player implementation that controls a Cast receiver app.
Getting the module
The easiest way to get the module is to add it as a gradle dependency:
implementation 'androidx.media3:media3-cast: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.
Using the module
Create a CastPlayer
and use it to control a Cast receiver app. Since
CastPlayer
implements the Player
interface, it can be passed to all media
components that accept a Player
, including the UI components provided by the
UI module.