Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Lays groundwork for an incremental migration to Media3 MediaSession by introducing a feature flag, starting to decouple cast playback state from the legacy compat constants, and adding the Media3 session dependency.
Changes:
- Added
Feature.MEDIA3_SESSIONremote-config/dev-toggle feature flag. - Replaced
PlaybackStateCompatinteger state usage inCastPlayerwith an internal enum. - Added the
androidx.media3:media3-sessiondependency to the repositories module (and version catalog).
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| modules/services/utils/src/main/java/au/com/shiftyjelly/pocketcasts/utils/featureflag/Feature.kt | Adds a feature flag entry for gating the Media3 session migration. |
| modules/services/repositories/src/main/java/au/com/shiftyjelly/pocketcasts/repositories/playback/CastPlayer.kt | Refactors cast playback state tracking away from PlaybackStateCompat constants. |
| modules/services/repositories/build.gradle.kts | Adds Media3 session dependency to repositories’ exported deps. |
| gradle/libs.versions.toml | Defines media3-session in the version catalog. |
You can also share your feedback on Copilot code review. Take the survey.
Collaborator
Project dependencies changeslist+ New Dependencies
androidx.media3:media3-session:1.9.3
! Upgraded Dependencies
androidx.media:media:1.7.0, (changed from 1.6.0)tree +--- androidx.mediarouter:mediarouter:1.8.1
-| \--- androidx.media:media:1.4.1 -> 1.6.0
-| +--- androidx.annotation:annotation:1.2.0 -> 1.9.1 (*)
-| +--- androidx.collection:collection:1.1.0 -> 1.5.0 (*)
-| \--- androidx.core:core:1.6.0 -> 1.18.0 (*)
+| \--- androidx.media:media:1.4.1 -> 1.7.0
+| +--- androidx.annotation:annotation:1.2.0 -> 1.9.1 (*)
+| +--- androidx.collection:collection:1.1.0 -> 1.5.0 (*)
+| +--- androidx.core:core:1.6.0 -> 1.18.0 (*)
+| \--- androidx.core:core:1.9.0 -> 1.18.0 (*)
++--- androidx.media3:media3-extractor:1.9.3
+| \--- androidx.media3:media3-decoder:1.9.3
+| \--- androidx.media3:media3-common:1.9.3
+| \--- androidx.media3:media3-session:1.9.3 (c)
+--- com.google.android.gms:play-services-cast-framework:22.3.0
-| \--- androidx.media:media:1.6.0 (*)
+| \--- androidx.media:media:1.6.0 -> 1.7.0 (*)
+--- project :modules:features:account
| \--- project :modules:features:search
| \--- project :modules:services:analytics
| \--- project :modules:services:model
| \--- project :modules:services:utils
| \--- androidx.car.app:app:1.7.0
-| \--- androidx.media:media:1.6.0 (*)
+| \--- androidx.media:media:1.6.0 -> 1.7.0 (*)
+| \--- project :modules:services:repositories
+| \--- androidx.media3:media3-session:1.9.3
+| +--- androidx.media3:media3-datasource:1.9.3 (*)
+| +--- androidx.collection:collection:1.2.0 -> 1.5.0 (*)
+| +--- androidx.media:media:1.7.0 (*)
+| +--- androidx.core:core:1.8.0 -> 1.18.0 (*)
+| \--- androidx.media3:media3-common:1.9.3 (*) |
MiSikora
approved these changes
Mar 19, 2026
358a86c to
1b9673a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This is the first step of the media3 session migration.
My plan is to raise incremental PRs, each building on the previous one.
Merge order should be respected: this will be merged last once every change is here and tested.
Testing Instructions
Just review the code.
Checklist
./gradlew spotlessApplyto automatically apply formatting/linting)modules/services/localization/src/main/res/values/strings.xml