birdbird c4f4bbd9d6 Decouple list ViewModels from SwipeRefreshLayout
GenericListModel no longer takes a SwipeRefreshLayout: refresh() and
backgroundLoadFromServer(refresh) are View-free, and the loading
indicator is now published via an isRefreshing LiveData that the
observing fragment forwards to its swipe-to-refresh view. Error
handling uses the application context instead of the swipe view's
context. The five list models (Playlist, Podcast, Share, Artist,
Genre) drop the swipe parameter from getItems(); fragments no longer
pass swipeRefresh into model calls and MultiListFragment observes the
model's loading state to drive the indicator.
2026-09-29 11:04:18 +02:00
2026-02-15 17:08:45 +00:00
2026-03-10 18:43:48 +01:00
2025-04-04 12:55:13 +00:00
2026-01-23 15:02:40 +00:00
2026-08-27 23:24:09 +02:00
2026-07-08 07:59:45 -05:00
2026-07-08 07:59:45 -05:00
2017-01-12 09:27:58 +01:00
2026-08-13 10:53:16 +02:00
2022-10-01 11:42:55 +00:00

Ultrasonic

Ultrasonic is free and open-source music streaming Android client for OpenSubsonic API (version 1.7.0 or higher) compatible servers.

Help wanted

We currently don't have that much time to spend developing Ultrasonic, so any contributions or active developers are always welcomed. Have a look at CONTRIBUTING to get started.

Download

App is available to download at following stores:

Get it on Google Play Get it on F-Droid Get it on GitLab

Warning: All three versions (Google Play, F-Droid and the APKs) are not compatible (not signed by the same key)! You must uninstall one to install the other, which will delete all your data.

If you want to use the version downloaded from F-Droid or from GitLab with Android Auto, you must enable Unknown Sources as it is described in this wiki page.

Bugs and issues

First, see if your issue haven’t been yet reported here, otherwise open a new issue.

Documentation

See documentation.

Contributing

See CONTRIBUTING.

Supported (tested) OpenSubsonic API implementations

Other OpenSubsonic API implementations should work as well as long as they follow API documentation.

License

This software is licensed under the terms of the GNU General Public License version 3 (GPLv3).

Full text of the license is available in the LICENSE file and online.

S
Description
Free and open-source music streaming Android client for Subsonic API compatible servers
Readme GPL-3.0
36 MiB
0 Stars 1 Watchers 0 Forks
Languages
Kotlin 100%