Skip to content

13.13.8

Choose a tag to compare

@github-actions github-actions released this 26 Aug 22:40

Changelog

Changes in v13.13.5..HEAD:

Highlights

  • Android Auto Crash Fix — fixed multiple crash causes when connecting to Android Automotive OS car displays. (Hush)
  • Blank Home Screen Fix — restored MusicBinder fallback in onBind() that was removed during the Auto crash fix, causing the app's own service binding to fail and rendering a blank home page. (Hush)
  • Waze Shim Sync Fix — fixed the build script and Gradle task only syncing waze-shims.zip to mobile/assets, leaving main/assets with a stale copy. FOSS builds now ship up-to-date shim APKs. (Hush)

Android Auto / Automotive

  • onBind binder fallback restored — MediaBrowserServiceCompat.onBind() only returns a non-null binder for the standard "android.media.browse.MediaBrowserService" action. The app's own bindService() uses a plain Intent with no action, so super returned null. Restored ?: binder fallback so the app's ServiceConnection always receives a valid MusicBinder. Android Auto / Waze shim connections still use the standard action and get the correct IMediaBrowserService binder. (Hush)
  • onCreate graceful degradation — replaced stopSelf() with warning logs when AudioManager/ConnectivityManager is unavailable during startup. Prevents the service from killing itself while Android Auto is already bound. (Hush)
  • onGetSession diagnostic logging — added logging when onGetSession returns null (session not yet initialized) for debugging race conditions with Android Auto binding. (Hush)
  • onDestroy ANR fix — reduced runBlocking timeouts from 1-2s to 500ms to stay within Automotive OS ANR budget. (Hush)
  • ProGuard keep rules — added -keep rules for MusicService, MusicBinder, MediaLibrarySessionCallback, and all MediaLibraryService/MediaSessionService subclasses. Prevents R8 from stripping classes that Media3 looks up reflectively when Android Auto connects. (Hush)

Waze Bridge

  • Shim asset sync fix — build-release.sh and copyShimApks Gradle task now copy waze-shims.zip to both app/src/main/assets/ and app/src/mobile/assets/. Previously only mobile/assets was updated, causing FOSS builds to ship stale shim APKs that couldn't be updated on-device. (Hush)

Build / CI

  • CommentsScreen CI fix — rewrote CommentsScreen.kt to be fully self-contained with inline data classes and its own InnerTube fetch logic. Eliminates dependency on core module's CommentsPage which CI's stale Gradle configuration cache never compiled. (Hush)
  • Core module cache bust — added invalidation marker to core/build.gradle.kts to force recompilation when new files are added. (Hush)
  • android.util.Log cleanup — replaced all remaining android.util.Log calls with Timber in Thumbnail.kt and MusicService.kt for consistency and ProGuard safety. (Hush)

Housekeeping

  • Version bumped to 13.13.8 (versionCode 169, app + waze-shim). (Hush)
  • Unit tests pass (all green). (Hush)

Upstream credits

Hush is built on ArchiveTune and combines features, fixes, and UI from several open-source YouTube Music clients—including Metrolist, Vivi Music, and Echo Music. Those projects are credited below; their licenses and copyright notices are preserved in source.

Project Repository
ArchiveTune ArchiveTuneApp/ArchiveTune
Metrolist metrolistgroup/metrolist
Vivi Music vivizzz007/vivi-music
Echo Music EchoMusicApp/Echo-Music

Thank you to the maintainers and contributors of every project listed above.