Changelog
Focuses on playback reliability, Chromecast integration, Music Together improvements, onboarding, backup handling, update delivery, and broader UI stability. This release also includes performance improvements, internal refactors, localization updates, and build pipeline refinements.
Major Highlights
Playback, Player & Audio
This release improves playback stability across multiple player styles, especially around CanvasArtwork, cached playback, fallback handling, and stream recovery.
- Stabilized CanvasArtwork playback across V7 and compatible player styles.
- Improved fallback playback, cached canvas reuse, and compatibility handling.
- Disabled problematic audio decoding paths where needed to prevent playback crashes.
- Improved recovery from invalid stream sessions, stale playback state, and cached playback span issues.
- Fixed player queue access from player controls.
- Fixed queue selection toolbar crashes, toolbar spacing, and selection count behavior.
- Added a local song shuffle action for faster local playback control.
- Improved open-ended read handling for WebM and Ogg playback streams.
Contributors: @rukamori, @mikooochi
Related: #823, #835, #851, #870, #885, #886
Chromecast, Cast & GMS Integration
Chromecast support has been added and the Cast experience has been redesigned for better reliability and a more modern interface.
- Added Chromecast / Cast support for GMS builds.
- Added LAN mode and HTTPS handling for Cast playback.
- Replaced the legacy Cast router UI with a Jetpack Compose Cast menu.
- Improved cast route selection behavior.
- Added receiver branding support for ArchiveTune Cast.
- Stabilized the Cast bridge, route picker menu, selectable-route handling, and AppCompat route dialog support.
- Improved GMS Bluetooth scan permission handling.
Contributors: @mikooochi, @rukamori
Music Together & Social Presence
Music Together now provides clearer session ownership and participant state, with improved layout behavior and Discord Rich Presence reliability.
- Added ownership transfer for Music Together sessions.
- Added join and leave notifications for shared playback sessions.
- Added Music Together access from the floating navigation toolbar.
- Refactored Music Together screen state handling.
- Improved adaptive layout behavior for responsive rendering.
- Centralized Discord RPC sync flow.
- Improved replay hold-aware Discord presence behavior.
- Fixed Discord Rich Presence album button URLs.
- Hydrated Discord presence links from the music service.
Contributors: @rukamori, @adam-adrian
Related: #864, #871, #877, #899
Library, Playlists & Search
Playlist management and search behavior have been improved with new controls, better state persistence, and cleaner UI handling.
- Added playlist hiding from the library context menu.
- Added playlist sort direction controls.
- Restored custom playlist reordering.
- Personalized top discovery sections in Search.
- Switched Search to official tab behavior.
- Fixed local playlist song selection persistence after refresh.
- Restored remote history song playback.
- Improved hidden playlist toggle styling.
- Merged playlist action controls for cleaner playlist management.
- Added NG language-code support.
Contributors: @rukamori, @sang765, @mikooochi
Related: #836
Onboarding, Backup & Update Flow
The first-run experience, backup restoration, and update flow have been expanded and refined.
- Added a first-run onboarding flow.
- Refined onboarding page design and fixed onboarding UI issues.
- Added
RestoreBackupFileActivitywith.backupintent handling and validation. - Redesigned the update screen structure.
- Added in-app GMS update downloads.
- Allowed update triggering for FOSS builds.
- Improved update download progress dialogs.
- Centered download dialog content.
- Added direct-download warning strings.
- Fixed GMS nightly artifact URLs.
- Restricted direct APK downloads to GMS builds.
Contributors: @mikooochi, @sang765, @rukamori
Related: #872
Widgets, Quick Settings & System UI
System-level integrations received new widget and quick settings support.
- Added the Listening Insights widget with additional listening information.
- Added AOD quick settings tile support.
- Improved AOD launch behavior by expanding the player before entering AOD mode.
- Added snackbar notifications.
- Added AI translate dialog background mode.
Contributors: @rukamori, @sang765
Related: #878, #893
Stability & Bug Fixes
Playback & Media Reliability
- Fixed V7 Canvas playback instability.
- Fixed Canvas fallback behavior and cached Canvas compatibility.
- Fixed Canvas decoding crash cases.
- Fixed playback effect rebinding.
- Fixed cached Canvas handling.
- Fixed search bar text-input crash cases.
- Fixed playback recovery callback typing.
- Fixed bad stream-session recovery.
- Fixed local songs incorrectly using YouTube radio.
- Ensured radio playback replaces the queue correctly.
- Fixed Music Together playback sync reliability.
- Widened Music Together screen state flow typing.
- Switched device mute detection to
AudioManagerfor more reliable mute-state handling.
Contributors: @rukamori, @mikooochi
Related: #864, #871, #877
Lyrics & Translation
- Fixed lyrics preload getting stuck by falling back through available providers.
- Preserved original lyrics after translation.
- Restored TTML word phonetics.
- Stripped embedded word timing tags from lyrics output.
- Removed the top grabber indicator from the lyrics screen.
- Blocked player-control touch passthrough from the lyrics screen.
Contributors: @rukamori
Related: #823, #890
UI, Layout & Responsiveness
- Unified player-aware bottom padding across settings screens.
- Fixed Add to Playlist dialog adaptive layout so actions remain visible.
- Removed the dark background from the create row.
- Redesigned the Tags Management dialog with an adaptive layout.
- Added adaptive Playback Error information layout.
- Added adaptive Music Together activity layout.
- Fixed Home screen speed dial auto-fit height.
- Fixed speed dial icon contrast.
- Fixed floating navigation toolbar brightness.
- Fixed pure-black mode FAB transparency in the floating toolbar.
- Fixed onboarding segmented list item calls.
- Disabled slider style for V7, V8, and V9 player styles where it caused appearance issues.
Contributors: @adam-adrian, @rukamori, @mikooochi
Related: #834, #876, #883
Queue, Player Menu & Navigation
- Removed unused radio menu actions from the player menu.
- Removed the library create-playlist FAB from the floating navigation toolbar.
- Removed queue selection count from the toolbar.
- Prevented selection toolbar constraint crashes.
- Fixed queue opening from player controls.
- Replaced the legacy queue selector.
Contributors: @rukamori
Related: #886
YouTube, Playlists & Data Handling
- Fixed YouTube playlist mutations when delegated authentication becomes stale.
- Fixed Library Mix screen most-played album display.
- Fixed remote history song playback.
- Improved WebM and Ogg stream handling for open-ended reads.
Contributors: @rukamori, @mikooochi
Related: #891
Performance Improvements
- Reused cached Canvas videos to reduce repeated Canvas resolution work.
- Reused cached playback spans to reduce repeated playback processing.
- Improved WebM and Ogg stream handling for open-ended reads.
- Enabled Gradle build caching.
- Refined
MusicServiceDataSpeclength handling. - Removed unused cached-resource checks.
- Improved update download progress handling.
- Refined update screen structure.
Contributors: @rukamori, @mikooochi
Internal Cleanup & Refactors
Architecture & Navigation
- Moved Search to the top route for a cleaner navigation structure.
- Moved vibration settings into Privacy settings.
- Added translucent top app bar icon buttons in
MainActivity. - Lightened Mood & Genres cards.
- Refreshed resource icons.
Contributors: @rukamori
Related: #849
Lyrics, Providers & Modules
- Extracted lyrics providers into a submodule.
- Moved pointer-input handling to the Apple Music controls column for safer input consumption.
- Preserved original lyrics state through translation and provider workflows.
Contributors: @sang765, @rukamori
Related: #880
Cast & Playback Internals
- Replaced the flat-list Cast route sheet with a Compose-based route flow.
- Specified Cast screen state typing for
MutableStateFlow. - Centralized Cast route selection success handling before hiding the route picker.
- Refined
MusicServiceplayback sync behavior. - Refined
DataSpechandling. - Improved cached playback logic.
Contributors: @mikooochi, @rukamori
Build, CI & Release Reliability
- Made release signing optional.
- Added support for FOSS release signing.
- Added GMS naming to build artifacts.
- Gated issue notifications on successful APK builds.
- Triggered development notifications after APK builds.
- Enabled Gradle build cache.
- Disabled cache duration for changing modules.
- Fixed compile issues around widget updater scope, extra branches, and missing resources.
- Updated submodule references.
- Merged submodule changes.
- Removed the Izzy variant.
- Moved the Discord OAuth callback activity into the shared manifest.
- Cleaned unused strings, resources, and codebase entries.
- Updated random speed dial color behavior.
- Prevented icon color overrides.
- Updated About ViewModel and cleaned attribution-related code.
- Bumped version to
13.6.0.
Contributors: @rukamori
Localization & Community
- Added missing Vietnamese and Japanese translations.
- Updated translations through Weblate for Korean, Spanish, German, French, Indonesian, Japanese, Estonian, Russian, Vietnamese, Portuguese (Brazil), Malay, Arabic, Arabic (Egyptian), Italian, Turkish, Chinese Simplified, Hebrew, Malayalam, Dutch, Ukrainian, Sanskrit, Hindi, and Tamil.
- Updated translation files.
- Added missing string resources.
Contributors: @sang765, @codeberg Translate, @rukamori
Related: #892
Pull Request Highlights
- #834 — Unified player-aware bottom padding across settings screens by @adam-adrian.
- #836 — Added playlist hiding from the library context menu by @sang765.
- #872 — Added
RestoreBackupFileActivitywith.backupintent handling and validation by @sang765. - #880 — Extracted lyrics providers into a submodule by @sang765.
- #892 — Added missing Vietnamese and Japanese translations by @sang765.
- #893 — Added snackbar notifications and AI translate dialog background mode by @sang765.
- #899 — Centralized Discord RPC sync flow and replay hold-aware behavior by @adam-adrian.
Contributors
Thanks to everyone who contributed to this release:
@hsp1020, @gallegonovato, @flue17, @adam-adrian, @rukamori, Priit Jõerüüt, @AlmaziikDev, @RubCut, @danz, @NENO756, @semmy, @ciaociaociao, @raden, @Zepp043, @Yar270, man_with_scars, @Vistaus, @mybxdxyz, @vintagezero, @midomizo933, @Chandramauli-Arm64, @ValteMCPE, @Mickael81, @naturbrilian.
Referenced Issues & Pull Requests
#823, #834, #835, #836, #849, #851, #864, #870, #871, #872, #876, #877, #878, #880, #883, #885, #886, #890, #891, #892, #893, #899