Releases: lyssadev/Spotilol
Release list
Spotilol - v1.1.7
Spotilol - v1.1.7 (10.01.2026)
v1.1.7 Changelog
added
- discord server: "Discord Server" button in about (settings) and a badge in the readme - https://discord.gg/95dAE2UkqP
changed
- faster cold start: webview HTTP cache kept between launches (#97)
- no more double-fetching every request in normal mode (#97)
- early injections now run as a document-start script (#97)
- snappier splash, fixed delays removed (#97)
fixed
- playback no longer pauses on its own after leaving the app (screen off / background)
- downloading the current song no longer grabs a different track (fixes #91)
- more stable background pause/resume from the service
NOTE - this is a hotfix: it fixes some of the reported bugs (background pauses, wrong-song downloads) plus a startup cleanup, but it does not guarantee anything yet, so some things may still be rough. if something is off, report it right away - the new discord server is the fastest way to reach us. thanks for the constant feedback, keep it coming!
- lyssadev
- startup and performance work: depo23 (#97)
Spotilol - v1.1.6
Spotilol - v1.1.6 (09.26.2026)
v1.1.6 Changelog
added
- in-app logging system — one central logger with a single on/off switch (on by default in debug builds, off in release), logcat-style levels (
verbose,debug,info,system,warn,error), a 2000 entry ring buffer and a logcat filter syntax (package:mine,level:w,tag:js,-word); every log in the app now goes through it — webview, bridge, services, downloads, proxy, offline, cipher, potoken and EJS - webview console capture — JS
consoleoutput, page loads, navigation, main frame errors, preference changes and everyAndBridgecall are logged with their level, source and line - logger panel rebuilt as a logcat — level chips, live filter field, colour per level, tap a line to expand its stack trace, plus clear and copy, opened from the hidden EXPERIMENTAL section
- crash handler and crash screen — uncaught exceptions are caught before the process dies and open a compact Material 3 crash screen with the full report: thread, stack and cause chain, app, device, region and timezone, network, memory, storage, webview, session preferences and the whole log buffer, with a copy button and a restart button; a hidden Crash test tile throws a test exception on demand
- first run onboarding — a welcome step listing the permissions the app needs (notifications and nearby devices) and a second step to pick Normal Mode or Certificate Mode, each with a short description, smooth fade in/out and animated transitions between phases; it only runs once and the permission prompts were removed from MainActivity
- build id — a short deterministic per-build id (e.g.
svqhsiomg5) shown next to the version in the splash, top bar, offline header, settings dialog and about section - picture-in-picture video — PiP now shows the actual video instead of the cover art and keeps it when the screen rotates
- sort by date added in the playlist menu, and playlist columns also sort albums
- delete all button in the offline screen
- live download state in the download notification
changed
- app typeface switched from Saira to Raleway
- settings redesigned as a compact Material 3 dialog with tabs instead of the old full screen
- splash reworked: the progress bar is gone, the Spotilol title fades in and out in the middle and the version with its build id sits at the bottom
- all user facing text moved to
strings.xml— no hardcoded strings left on screens, dialogs, toasts, notifications or layouts - offline screen tightened up, and the back gesture now closes the keyboard before leaving the screen
- the old debug log store was dropped and the debug section was renamed to EXPERIMENTAL
fixed
- search overlay no longer stays hidden after the app comes back from the background
- picture-in-picture no longer falls back to the cover art, and no more black video in portrait
- bluetooth auto pause is reliable again
- crash screen colours follow the app theme, AMOLED, Material You and custom accent included
NOTE — if you find any bug, crash or something off, please report it right away so we can fix it fast. thanks everyone for the support, and we'll keep improvising.
— lyssadev
Spotilol - v1.1.5
Spotilol - v1.1.5 (09.20.2026)
v1.1.5 Changelog
added
- MP3 downloads — new in-app encoder built on vendored
libmp3lameandlibopus 1.4local modules, with in-process WebM demuxing and no external audio dependency - DOWNLOADS section in Settings — Audio Format (
m4aormp3), Download Folder (any writable folder, SD card included) and configurable subfolder for the default scheme - Write Tags and Cover Art toggle — title, artist, album and embedded cover art on every download
- folder history — the picked folder is remembered and write access survives restarts, and the offline library scans every folder you have picked
- Sort Playlists by Column — tap a playlist column header to sort alphabetically, switchable in Settings
changed
- third-party audio deps (
jaudiotagger,jump3r,qiujuer lame) replaced by the local:lame/:opusmodules and in-house MP3/M4A tag writers - debug logging stripped across downloader, webview, cipher, potoken, EJS and proxy code, plus console log forwarding removed
timberdependency dropped- AGP
9.3.1→9.4.1 - unused resources removed (
ic_settings, duplicate launcher foreground)
fixed
- play/pause state is now language independent — the player icon, the notification, the media session (lockscreen, Wear, Android Auto) and the autoplay/unlock checks no longer depend on English
aria-labels, so accounts in other languages see and control the right state - media metadata is kept when Android Auto controls are off — the notification no longer blanks the title, artist and cover art
- search overlay no longer closes instantly when the keyboard opens
- links shared from other apps no longer crash the sender app —
android:autoVerifyadded to the link intent filter - "Open by default" tile now has fallbacks when the system settings intent is unavailable
- quick menu icons match the offline mode state, and the service preference is no longer reset when toggling offline mode
- system bar icons are now light on Splash, Main and Offline screens
- redundant
allowBackuptools:replacedropped
NOTE — if you find any bug, crash or something off, please report it right away so we can fix it fast. thanks everyone for the support, and we'll keep improvising.
— lyssadev
Spotilol - v1.1.4
Spotilol - v1.1.4 (09.18.2026)
v1.1.4 Changelog
added
- Open by Default support — Spotilol now handles shared Spotify links (tracks, playlists, albums,
spotify.linkshort links) - service auto-starts when a link is opened with the service off — the link loads once the WebView is ready
- SPA navigation for links opened while the app is running — navigates without reloading so playback stays untouched (full redirect fallback when not possible)
- "Open Spotify Links" tile in Settings → jumps to the system Open by default screen to enable link handling
fixed
- link intent filter moved to
MainActivityso shared links open the player instead of relaunching the splash screen - cold-start links are now forwarded from Splash to Main — the target track/playlist no longer gets lost on first open
- link handling extended to
spotify.com,www.spotify.com,play.spotify.comandspotify.linkhosts
Spotilol - v1.1.3
Spotilol - v1.1.3 (09.06.2026)
v1.1.3 Changelog
added
- library panel auto-close on outside interaction (LibraryAutoClose) — by AldySan
fixed
- declare recAdContentIds on the JS bridge so audio ad silencing works — by tallowmoth
- keep MainActivity alive across app switches with singleTask launch mode — by tallowmoth
- exclude profile dropdown menu from Download injection — by AldySan
- route offline notification to existing offline activity — by lyssadev
- singleTop launch mode for offline activity — by lyssadev
improved
- remove unused CloseNowPlay preference — by AldySan
Spotilol - v1.1.2
Spotilol - v1.1.2 (09.03.2026)
v1.1.2 Changelog
NOTE: This release squashes all development work from a8c26ed to the latest into a single deployable commit. Android Auto Support, batch downloads, lyrics style theming, and full InnerTube metadata extraction are now available.
added
- android auto media browser with async browsing, search, and playback — by lyssadev
- add contextUri support to playFromUri — by lyssadev
- car application meta-data and automotive app description for android auto — by lyssadev
- android auto notification and controls — by lyssadev
- repeat icons (one, off, regular) — by lyssadev
- offline download service, batch download, and collection download — by AldySan
- context menu download for track rows — by AldySan
- download progress with fixed positioning and accent — by AldySan
- SpotilolPlayer integration for batch downloads — by AldySan
- song search to offline library — by AldySan
- selectable lyrics style themes (default, fullscreen, compact, karaoke, bold) with dedicated style element and live switching — by AldySan
- full InnerTube metadata extraction and storage (video id, title, artists, album, duration, thumbnail, explicit) — by lyssadev
- album, duration, and explicit badge in offline song row — by lyssadev
- unified accent color across injected player, notifications, and native chrome — by Malrus
- independent wired headphone auto-resume toggle — by Malrus
- BlockServiceWorker toggle with live-apply and extract VideoPark from WorkerNeutralize — by Malrus
- auto-close queue panel on non-queue user interaction — by Malrus
- hide mini player until a real track is loaded — by AldySan
fixed
- downgrade core-ktx to 1.17.0 to fix systemOverlays crash on API 34 — by lyssadev
- pass album to media notification — by lyssadev
- OfflineStore lifecycle for batch downloads — by AldySan
- android auto infinite loading loop with single-flight checkMediaLib and always-respond fetchMediaItems — by lyssadev
- typo in libraryV3 response path (data.data.me) — by lyssadev
- parseLibrary for current Spotify response structure — by lyssadev
- fetchAllLibrary to use oriFetch directly — by lyssadev
- volume bar fill not following accent color — by AldySan
- wire offline screens to async profile and settings APIs — by AldySan
- resolve onetime autoplay mode failing on app open/resume — by Malrus
- media notification persists after app removal from recents — by Malrus
- make settings toggles apply instantly and honor user preference — by Malrus
improved
- batch download events wired in MainActivity — by AldySan
- registered prefs listener once and batch JS injections — by AldySan
- reduce per-call overhead across JS hooks — by Malrus
- remove per-request allocations from URL helpers — by Malrus
- update readme with android auto offline downloads clean credits — by lyssadev
- update wiki with new packages and android auto docs — by lyssadev
Thanks for using Spotilol! If you enjoy the app, consider giving it a star and sharing it around. Special thanks to everyone who contributed, tested, and reported issues - this release wouldn't be the same without you.
- lyssadev ❤️
Spotilol - v1.1.1
Spotilol - 1.1 (08.30.2026)
1.1.1 Changelog
NOTE: This version is a hotfix for the previous v1.1 release, which wasn’t working as intended. That said, since it’s still a v1.1 and includes new additions, any feedback you’d like to share is more than welcome.
fixes
- fixes the crashes ocurring on the first v1.1 version.
Spotilol - v1.1
Spotilol - 1.1 (08.30.2026)
v1.1 Changelog
NOTE: This is the first phase 1 release with major changes. While we've tested extensively, big changes can introduce bugs we may have missed. If you run into any issues, please report them on GitHub, your feedback helps us improve quickly.
NOTE 2: Android Auto support is still in testing/experimental phase. It may not work perfectly on all devices or head units.
NOTE 3: The new downloader is currently limited to downloading the track being played, and only via the YouTube method. Support for playlists is planned for a future update, any help or reports are welcome.
added
- Blockify-style player-state ad hook (AdStateHook + AdIdStore) — PR #43 by Malrus
- Google Analytics / tracker neutralizer (GaBlocker) by Malrus
- TrackObserver injection exposing the current
trackId/trackUriglobally by Malrus - native Compose error screen for WebView load failures by Malrus
- Spotify error boundary dialog restyle for mobile by Malrus
- Power Save Mode + autoplay unlock deadlock fix by Malrus
- file chooser support + Spotify service worker neutralization by Malrus
- WebGL fingerprint spoofing by Malrus
- debug log collector + live devlog viewer
- Android Auto media browser service
- volume slider bar in the custom player
- offline mode & YouTube download support
fixed
- live-preference sync for AmoledTheme and CustomCss (applied immediately) by Malrus
- external navigation leaking on the settings page + OAuth login flows by Malrus
- MediaSession metadata now gated behind the AndAuto preference by Malrus
- certificate export after reinstall (#33), 10s track skip, blank video, incomplete browser spoof by Malrus
- telemetry leak, main-thread violations, child WebView leak by Malrus
- WebView crash recovery and leak fixes by Malrus
- proxy first-load race + hardened ProxyController usage by Malrus
- Google Tracker blocking for privacy by Malrus
- devlog dialog not opening from settings
- native debug gating enforcement, unblock workbox-window chunk by Malrus
improved
- reduced polling & injection overhead in LyricsSyncFix & CssHack by Malrus
- optimized JS injection lifecycle on background/foreground transitions by Malrus
- optimized ErrorDialogRestyle scans, removed dead DOMContentLoaded listeners by Malrus
- eliminated redundant DOM queries in ToastFix polling path by Malrus
- softened interval throttle, expanded ad blocklist by Malrus
- keep-alive socket reuse + hardened JS boot/auto-play wiring by Malrus
- raw
Threadmigrated toExecutorServicein proxy & GitHub API by Malrus - regex console.log stripper replaced with cached scanner by Malrus
- Firebase migrated to version catalog + build toolchain upgrade by Malrus
- gradle wrapper upgraded to 9.7.1
- lyrics sync fix, toast restyle, modal fix by Malrus
refactored
- profile encrypted prefs migrated to MasterKey API by Malrus
Also thanks for using Spotilol! If you enjoy the app, consider giving it a star and sharing it around. Special thanks to everyone who contributed, tested, and reported issues, this release wouldn't be the same without you. 💚
- lyssadev
Spotilol - v1.0.10
Spotilol - 1.0.10 (08.18.2026)
v1.0.10 Changelog
fixed
- fixed search bar not showing
- fixed spotify api hashes (now selfhealing)
Spotilol - v1.0.9
Spotilol - 1.0.9 (08.18.2026)
v1.0.9 Changelog
new
- Material You themed app icon (monochrome)
- landscape mode setting (portrait by default)
- keep screen on setting
fixed
- CA export (permission denied on Android 9)
- foreground service crash (startForeground not called in time)