Wavio runs entirely on your device and talks only to the music server and the third party services you configure. We don't collect, sell, or share your data, because we don't have it.
01Who we are
Wavio is a free, open-source Android application maintained by independent contributors. The source code is published under the MIT license and available for anyone to inspect on GitHub.
02What Wavio collects about you
Nothing personal. Wavio has no accounts, no profiles, no advertising SDKs, no behavioural analytics, and no social trackers. We do not operate any server that stores who you are or what you listen to.
The only data leaving your phone is what's needed to play music or to help us diagnose crashes, described in the next two sections.
03What stays on your device
To work as a music player, Wavio stores the following locally, on your phone only:
- Server connection details (URL, username, and an encrypted password or token) for each server you add.
- Your playback queue, recently played and recently searched items, sleep timer and equalizer settings, and other app preferences.
- Tracks you choose to download for offline listening, plus cached album art and metadata fetched from your server.
- Podcast API credentials (Taddy) if you enable podcasts.
This information lives in app-private storage, and uninstalling Wavio removes all of it. The one exception is a track you explicitly save to your device: that file is written to your phone's shared Music folder, so it stays there after the app is gone, until you delete it yourself.
04What your music server sees
When you connect Wavio to a Navidrome, Jellyfin, or OpenSubsonic instance, the app communicates directly with that server using the credentials you provide. The server will typically log your IP address, the requests you make, and your listening activity, just like any other client would.
Wavio can also play music without any such server. A local library is read straight from your phone's own storage, and nothing about it leaves the device. An SMB or WebDAV network share is contacted directly, on your network, with the credentials you enter, and whatever that machine logs is between you and it.
Wavio's contributors do not operate any of these servers or shares and have no access to what they log. Please consult the privacy policy of whatever you connect to.
05Crash and error reporting
Production builds of Wavio use Sentry to report crashes and unexpected errors so we can fix them. Each report includes technical context such as a stack trace, the app version, the device model, the Android version, and the IP address that delivered the report.
Reports carry one identifier: a one-way hash of your username and Wavio's internal id for that server, so related reports can be grouped and two of your servers told apart. It cannot be reversed, never includes the server's address, and there is no other identifier — no name, no email, no advertising or device id. We do not track which screens you visit, do not log what you listen to, and do not build a profile of you. Reports are used only to diagnose bugs and are retained according to Sentry's data retention policy.
06Android permissions
Wavio requests only the permissions it needs to play music:
- Internet, network and Wi-Fi state to reach your music server and the third-party services listed below, and to tell “you are offline” apart from “your server is unreachable”.
- Foreground service and media playback to keep audio playing when the screen is off.
- Foreground service data sync to keep scanning a local or network library while you do something else.
- Notifications to display playback controls on the lock screen and in the notification shade, and to show scan progress.
- Modify audio settings to apply the system equalizer.
- Read media audio and storage to save and read downloaded tracks for offline playback, and to index a library stored on the device.
- Wake lock so the system does not suspend playback or a download part-way through.
- Vibration for subtle haptic feedback on certain controls.
- Install packages, in the build distributed on GitHub only, so the in-app updater can hand a downloaded release to Android's own installer. The Google Play build does not request this and updates through Play instead.
Wavio does not request access to your contacts, your location, the microphone, the camera, or any other sensitive data.
07Third-party services
Beyond your music server and Sentry, Wavio talks to a number of external services. Each is contacted only when you use the feature that needs it, and those requiring an account are contacted only once you have connected one yourself.
- LRCLib is queried for synchronised lyrics when you open the lyrics view for a track.
- Taddy powers podcast search and metadata, and is only contacted if you provide your own Taddy API key and user ID in the settings.
- Radio Browser provides the internet radio station directory, and is queried when you browse or search for radio stations.
- MusicBrainz and Cover Art Archive are queried when you use tag correction on a local album, to look up release metadata and cover art.
- ListenBrainz receives what you listen to, if you connect an account and switch scrobbling on. This is listening history leaving your device by design: it is off until you enable it, and it goes to the ListenBrainz server you choose. Artwork on the resulting statistics screens is fetched from the Internet Archive.
- Last.fm also receives what you listen to, if you connect an account and switch scrobbling on. Connecting opens Last.fm in your browser to approve Wavio, and you can withdraw that approval at any time from your Last.fm account settings. Loving a track is sent as well when loved-track sync is on, and the statistics, similar-artist recommendations and cover art you see in the app are read back from Last.fm.
- Podcast feeds are fetched straight from whichever host publishes them when you follow a show on a local library, which exposes your IP address to that host.
- GitHub is asked for the latest release when the in-app updater checks for one, and serves the APK if you install it. This applies to the build distributed on GitHub, not the one from Google Play.
- Google Cast is used when you cast playback to a Chromecast-compatible device. Google's terms then apply to that session.
- Cloudflare, Apple, Google and Yandex each publish a small “are you online” endpoint. When your server stops answering, Wavio pings them to work out whether the internet is down or only your server is; whichever replies first sees your IP address and nothing else.
Some features connect to software you run yourself: Lidarr, SoulSync and Tidarr for downloads, and AudioMuse-AI for recommendations. Wavio only ever contacts the address you enter, with the credentials you enter, exactly as it does with your music server. Browsing the Tidal catalogue through Tidarr additionally loads cover art from Tidal's own image servers.
Casting to a DLNA or UPnP device hands the stream address to that device on your local network, so it can fetch the audio itself.
No advertising network, no analytics provider, and no social tracker is integrated into Wavio.
08Children
Wavio is suitable for users of all ages and does not knowingly collect any information about anyone, including children.
09Changes to this policy
If this policy ever changes, the updated version will be published here and announced in the project's release notes on GitHub.
10Contact
Questions, concerns, or curiosity? Open an issue on the Wavio GitHub repository and a maintainer will get back to you.