You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fixed third-party sources being blocked by the system cleartext policy when using HTTP import URLs, endpoints or play links: script imports, script requests and media playback now use an isolated HTTP channel with dynamic domains, redirects and media Range requests, without inheriting account cookies. Normal cleartext access remains blocked by default.
Fixed LX Music scripts failing when QuickJS was called across threads during reuse: each script's creation, calls, callbacks and destruction now run serially on its owning thread, network waits cover the default HTTP timeout, and timed-out sessions are discarded.
Cross-provider search now keeps only the highest playable quality when the same artist, title and duration (within 10 seconds) match; distinct versions remain listed side by side.
Fixed Qishui QR sign-in: the full Douyin Passport cookie is retained, 3xx confirmations are handled, and the post-scan 404 is gone.
Fixed system lyrics, floating lyrics, HyperOS Super Island, vivo atomic island, ColorOS lockscreen lyrics and SuperLyric recognizing only NetEase songs; they now share the player page's Provider lyric loader.
USB and device output
Experimental USB exclusive output now covers full-speed and high-speed UAC1: adaptive/synchronous isochronous OUT endpoints are accepted, packet sizes are scheduled per USB microframe from the endpoint interval (125µs–1ms), and PCM descriptors with 2/3/4 bytes per sample (16–32 significant bits) are supported. 24/32-bit containers are widened from PCM16 with zero padding; no high-resolution pass-through is claimed. UAC2, asynchronous feedback, multi-transaction endpoints and DSD remain unsupported.
Pausing keeps the unsubmitted ring buffer so playback resumes where it stopped; seeking flushes stale audio so old samples are never replayed; readiness is reported only after the first URB completes a round trip.
USB exclusive output is mutually exclusive with AutoMix: a crossfade can no longer silence or strand the DAC, and LAN cast restoring local output cannot clear a mute owned by USB, which would play the speaker and DAC together.
Every USB attempt records VID:PID, the speed result and its source, audio interface descriptors (hex, including the UAC protocol version), the decoded format, the selected interface/endpoint/max packet size and the failure reason. Attach them via Settings → About → Export all MeloX logs; USB serial strings are not collected.
Startup and stability
Startup no longer throws when account encryption migration fails: failed disk writes/cleanup keep the data for retry, and an in-memory downgrade no longer wipes the only persisted session.
Hardened first-screen playback-controller binding and system volume listening: async binding errors are captured, delayed connections are released correctly, and temporary audio-service unavailability no longer interrupts startup polling.
Completed exception isolation for the optional Lyricon external lyric bridge and hardened the optional Xiaomi stack (Super Island, Shizuku, MiPlay races); optional service failures no longer reach the app's main thread.
Fixed legacy-device cold starts: Android 10/EMUI use the compatible output panel and system Bluetooth settings, Android 14+ routing and foreground-service types are version-gated, and Android 12+ picture-in-picture scaling is corrected.
Qishui session storage now uses unified recoverable encrypted storage; keystore failures degrade to signed-out instead of blocking startup.
Settings, lyrics and UI
Added in-app "Liked": the first time cross-provider content settings are enabled you can choose which sources to migrate, generating a MeloX-only local favourites playlist; love actions from any source then write into it.
Added Settings → Experimental → CLI mode: query playback state and the queue over ADB, control play/pause/skip/seek/volume/repeat, and search or play from a chosen source; see tools/melox_cli.py and docs/CLI.md.
During AutoMix the flowing background blends the colours of both covers and settles back to the single cover afterwards.
Build artifacts are split per CPU architecture into arm64-v8a and armeabi-v7a APKs; no universal package with both native-library sets is published.
Download and installation
Release APKs: MeloX-Android-0.7.1-arm64-v8a.apk and MeloX-Android-0.7.1-armeabi-v7a.apk; choose the one matching your phone's CPU.
Package: com.lladlam.melox.android; version: 0.7.1; versionCode: 26. The official package id and signing key are unchanged, so it updates 0.7.0 and earlier releases in place.
Signed with the MeloX release key; certificate SHA-256: DF:CC:A9:86:5B:87:A4:02:D3:41:98:5A:48:EB:13:2B:D8:67:9D:FA:6D:9D:50:2F:36:5D:D1:62:10:A5:EB:E9.
APK checksums are published in SHA256SUMS.txt.
The rolling dev-latest development builds use Android's default debug key and cannot update an official install in place.