v1.0.3: The "Polished & Connected" Update
This release marks a significant milestone in UI/UX maturity and feature expansion. We've focused heavily on bridging the gap between platform aesthetics (Apple Music/Spotify inspirations), enhancing social connectivity (Comments, Sharing), and solidifying the "Super App" music experience with seamless integrations.
Key Features
- Spotify Playlist Import: Migrated from closed beta. Users can now seamlessly import playlists directly from Spotify with detailed success/failure reporting.
- Enhanced HQ Audio Integration:
- Full-fledged integration for Home Sections, Charts, and Trending data.
- Comprehensive Search support (Artists, Albums, Playlists).
- Synced Lyrics (via LRCLib) for all supported tracks.
- Note: HQ Audio streaming is now gated behind Developer Mode for compliance.
- Dynamic Island & MiniPlayer:
- Added a fully interactive, floating "Dynamic Island" overlay with seekbar controls.
- Redesigned in-app MiniPlayer with a modern, floating card aesthetic (Spotify-inspired) and swipe gestures.
- Social & Community:
- Comments System: View and post comments on tracks directly from the player menu.
- Share Functionality: Added
suvmusic://deep linking and improved sharing logic for seamless cross-app song sharing. - Listening Stats: New dashboard for tracking top songs and artists over time.
- Playback Experience:
- Endless Queue (Radio Mode): Automatically fetches recommendations when the queue ends.
- Video Mode: Toggle between Audio-only and Video playback for YouTube tracks.
- Offline Mode: Dedicated toggle and storage management to strictly play local/downloaded content.
UI/UX Overhaul
- Apple Music Aesthetic:
- Implemented "Glass" material design for dialogs (Update, Developer Access).
- Added press animations to player controls and polished volume sliders.
- Introduced pull-to-refresh interactions across Home and Library screens.
- Theme & Customization:
- Light Mode Support: Comprehensive light theme rollout across Player, Album, Lyrics, and Settings screens.
- Visual Flair: "Swiggy-style" animated footer, bounce effects on cards, and transparent bottom navigation.
- Seekbar & Artwork: Added configurable artwork shapes (Vinyl, Circle, Square) and waveform seekbar styles.
- Gestures:
- Added vertical swipe volume controls.
- Improved swipe-to-dismiss interactions for the player view.
Fixes & Improvements
- Performance: Offloaded heavy JSON parsing and optimized config image caching for smoother scrolling.
- Architecture: Refactored the massive
PlayerScreeninto smaller, maintainable components. - Security: Implemented encrypted storage for cookies and secured developer mode access.
- Bug Fixes:
- Fixed status bar visibility and flickering issues in Light Mode.
- Resolved audio output switching bugs and UI persistence.
- Fixed playback delays and notification control reliability.
- Corrected download path issues and file deletion logic.
📜 Full Changelog
- polished update dialogs with apple music glass style
- Refactored Developer Access Dialog into a separate component with improved UI
- Restricted JioSaavn HQ audio access to developer mode only
- updated support screen contact info and telegram links
- feat(settings): add support section with new SupportScreen
- feat(home): add animated swiggy-style footer
- feat(lyrics): add light mode + tap-to-seek
- fix share link - put youtube url first so its clickable
- add detailed readme with architecture docs
- update readme
- add suvmusic:// custom url scheme for sharing songs
- add apple music style press animation to player controls
- update player controls to match apple music style
- add support for opening audio files from file managers
- Add offline mode toggle and storage management screen
- Fix light theme flickering on song change in PlayerScreen
- Add light mode support for Comments and Sleep Timer screens
- Fix SongCreditsSheet for light theme: Replace hardcoded colors with MaterialTheme color scheme
- Update AboutScreen: emphasize Made in India and add app description
- fix navbar visibility in light mode
- add 'Developed with love from India' footer to HomeScreen
- optimize performance: offload JSON parsing and config image caching
- fix profile pic in about screen + add how it works page
- output device dialog stays open after switching
- make bottom nav transparent like spotify
- fixed playback dialog closing automatically
- fix 3dot menu to open fully instead of partial
- add comment posting feature with profile pics, input field and send button
- move comments to 3dot menu, fix comment text showing wrong
- added comments section
- made repeat button trigger repeat one on first click
- added source section in about screen
- fixed duplicate hq audio badge in song credits screen
- replaced JioSaavn branding with HQ Audio
- fix: correctly parse artist, album and duration from more_info in JioSaavn repository
- fixed playlist song count display in library screen
- refactored recents screen to show monthly history from database
- improved song credits screen layout and added copy to clipboard
- feat: add swipe gestures and dynamic colors to mini player
- added static app theme selection when dynamic color is disabled
- fixed build error in MusicPlayerService by using correct ImmutableList type
- added custom seekbar styles to dynamic island overlay
- synced seekbar controls across system notification and dynamic island overlay
- modernized the home cards UI, added that nice bounce effect on tap
- fixed jiosaavn artist details not loading by implementing getArtist in repository and updating viewmodel
- comprehensive search for jiosaavn tab with artists, albums, and playlists
- fetch dynamic home sections from jiosaavn launch data
- fixed volume indicator not showing on player screen
- show volume indicator even if volume is already at min or max
- fixed player exit animation, horizontal slide felt weird when swiping down
- optimized player state to reduce lag, split progress updates so the whole app doesn't redraw every second
- fixed seekbar design so wave only shows on played part now. also fixed that weird bracket error in homescreen
- added search filters and trending stuff, also updated home screen ui
- implement endless queue with infinite scroll for radio mode
- add start a radio option in player menu with yt recommendations
- jiosaavn home now fetches real api data - charts albums playlists trending
- album: implement light theme support for AlbumScreen (#13)
- add cache for library screen like home, shows cached data first then refreshes
- seekbar style also gets its own screen now
- move artwork shape to its own screen instead of showing inline
- add delete option for user created playlists in playlist screen
- Add detailed summary UI for Spotify playlist import showing successful and failed songs
- Enhance Library Screen UI and Import Spotify Dialog
- Fix Spotify playlist import by parsing embed JSON data
- Added Spotify playlist import feature
- add player customization settings with persistent storage
- split seekbar styles into separate files for cleaner architecture
- add long-press artwork shape options (rounded, circle, vinyl, square)
- show volume indicator on all screens when song playing
- download: Redesign Downloads screen and add light theme support
- hide system volume ui, use custom slider with smooth anims
- redesign about screen, looks way cleaner now
- use dynamic material you colors in bottom nav
- update app icon to new sm logo
- clean up bottom nav glass effect, was too much
- make bottom nav look more glassy like ios
- added share button to playlist screen so users can share links
- feat: enhanced sleep timer with custom durations, fixed output device ui, removed source selection
- removed source selection from welcome screen
- fixed audio output switch ui bug
- fetch public YTM content for non-logged users
- add Dynamic Island floating mini-player feature with settings toggle
- refresh audio output devices when sheet opens
- fix thumbnail not showing on player for user playlist songs
- feat: add Apple Music-style pull-to-refresh to HomeScreen and LibraryScreen
- fix home sections pagination and parsing
- fetch all home sections including lists and grids
- fetch and show trending songs from charts api
- use only internal api for home sections when logged in
- update recommendations to use ytmusic api
- fix bluetooth output switch
- made volume indicator interactive and expanded gesture area to right half of screen
- added apple music style volume slider and fixed gestures
- changed cast icon to devices for better output selection
- refactor: broke down the huge PlayerScreen into smaller components
- player: ensure volume indicator renders above album art
- fix: rename onDrag to onVerticalDrag in PlayerScreen to fix compilation
- Merge pull request #8 from SMH01-MOD-NEXT/Playlist-light-theme
- added gesture volume control - swipe right side up/down
- fixed song change delay - immediately pause on new song selection
- playlist: add adaptive theming to PlaylistScreen
- connected listening statistics to settings screen
- Merge pull request #7 from SMH01-MOD-NEXT/Bitmap-fix
- Update app/src/main/java/com/suvojeet/suvmusic/service/CoilBitmapLoader.kt
- Update app/src/main/java/com/suvojeet/suvmusic/service/CoilBitmapLoader.kt
- removed encrypt_setup.py
- added listening statistics screen with top songs and artists
- Fix IllegalArgumentException in MediaNotificationProcessor on older Android versions
- added network connectivity monitor with 30-second offline notification
- added personalized recommendations UI with 'For You' section
- added personalized recommendations system with offline tracking
- added youtube playlists in search results
- fix player screen light mode - looks white now instead of dark
- fixed player screen background for light mode but kept it black for dark theme
- fix: status bar visibility on player screen in light mode
- updated about screen with official social icons
- Merge pull request #6 from SMH01-MOD-NEXT/player-theme-light
- player: resolve dark player background issue in light theme
- fixed device switch icon visibility and added auto refresh for connected devices
- feat: implement audio output device selection in player screen
- ui: enhance YouTube login security and user trust
- Merge pull request #5 from SMH01-MOD-NEXT/artist-error
- added encrypted storage for cookies and updated manifest security settings
- artist: resolve blank screen issue and improve error handling
- fixed jio saavn playlist loading error and filtered lib playlists
- Merge pull request #4 from SMH01-MOD-NEXT/style-and-swipes
- feat: redesign about screen and add secure developer mode
- player: add interactive swipe-to-dismiss and fix nav bug
- fix: resolve double navigation issue on player swipe dismiss
- style: set explicit size for Next icon
- style: fix kotlin formatting for lambdas
- refactor: cleanup config management and improve settings UI flow
- added jiosaavn playlists to library screen
- fix jiosaavn notification controls not playing by detecting empty urls
- fix notification next/prev not auto-playing by handling SEEK transition
- optimize youtube playback speed with stream url caching and reduced timeout
- Merge pull request #3 from SMH01-MOD-NEXT/main
- fix video playback display with actual PlayerView when video mode enabled
- add video mode toggle for youtube songs in player
- UI: Redesign MiniPlayer to floating card style (Spotify-like look)
- fixed ota update check logic, was comparing version code with version name
- make welcome screen dynamic based on source selection
- Merge pull request #2 from SMH01-MOD-NEXT/main
- add synced lyrics from lrclib for jiosaavn songs
- Fix
NoSuchMethodErrorcrash by updating desugar library to NIO variant - fix delete actually removing files from storage
- show correct source in credits for downloaded songs
- fix thumbnail showing in downloads screen instead of saving to folder
- docs: remove trademarked mentions from README and sharing logic
- security: implement caching, stealth headers, and generic branding for cloud source
Built with ❤️ in India.