-
Notifications
You must be signed in to change notification settings - Fork 6
Privacy & Data
Privacy is a core design principle of Levyra.
Levyra is designed around local-first data, transparent network access and user-controlled integrations rather than mandatory accounts, advertising profiles or hidden analytics.
This page explains how Levyra handles local data, network communication and Android permissions.
This is a technical privacy overview. For licensing, liability and third-party service information, see the project's full Legal Notice.
Levyra is designed around a few simple rules:
- No mandatory Levyra account
- No advertising profile
- No unnecessary analytics
- No hidden tracking
- Listening history stays local by default
- Listening statistics are computed locally
- User data should remain portable
- Optional integrations remain optional
- Network access should serve visible application functionality
flowchart TD
USER[User]
LEVYRA[Levyra]
LEVYRA --> LOCAL[Local Data]
LEVYRA --> MEDIA[Music Services]
LEVYRA --> OPTIONAL[Optional Integrations]
LOCAL --> HISTORY[Listening History]
LOCAL --> PLAYLISTS[Playlists & Favorites]
LOCAL --> SETTINGS[Settings]
LOCAL --> STATS[Listening Statistics]
OPTIONAL --> EXT[External Service]
USER --> LEVYRA
Most personal application state is stored locally on the device.
Depending on the features you use, local data can include:
- Playlists
- Favorites
- Followed artists
- Listening history
- Play counts
- Listening statistics
- Queue state
- Application settings
- Download information
- Lyrics and cached metadata
- Recognition history
- Backup information
This information is used to provide Levyra's features without requiring a Levyra cloud account.
Features such as listening history and listening insights are computed locally.
Levyra can use local playback information to provide features such as:
- Play counts
- Listening time
- Listening trends
- Recently played music
- Personalized local experiences
- Rediscovery of older favorites
These features do not require an advertising or analytics profile.
Playlists, favorites and other library information are part of Levyra's local application data.
They should remain available independently from analytics or advertising systems.
Where supported, this information can also be included in Levyra backup and restore systems.
Levyra includes local backup and restore functionality designed to protect application data.
Backups may contain information such as:
- Settings
- Favorites
- Playlists
- Followed artists
- Listening history
- Queue state
Backup destinations and behavior depend on the selected configuration.
Levyra's backup architecture is designed around recoverability and user control.
Downloaded music is designed to remain portable.
Where supported, Levyra stores music as standard media files with metadata rather than requiring an application-only proprietary vault.
Files may contain:
- Track title
- Artist
- Album
- Artwork
- Lyrics
- Other media metadata
This allows compatible media to remain usable outside Levyra.
Streaming applications necessarily communicate with external services.
Levyra may connect to third-party services to provide functionality such as:
- Music streaming
- Search
- Stream resolution
- Music metadata
- Artwork
- Lyrics
- Charts
- SponsorBlock information
- Application updates
- Optional scrobbling
- Optional music recognition
These services are independent from Levyra and may operate under their own privacy policies and terms.
Levyra is primarily a client-side application.
Normal media requests are made to the services required for the requested feature rather than being routed through a centralized Levyra analytics system.
This means Levyra does not need to maintain a central listening profile for you to use the application.
Depending on the feature being used, Levyra may communicate with services such as:
- YouTube / YouTube Music infrastructure
- LRCLIB
- Public music metadata providers
- SponsorBlock
- GitHub
- Optional scrobbling providers
- Optional music recognition providers
Not every service is contacted during every session.
Network activity depends on which Levyra features you use.
Some features may communicate with additional third-party services only when configured or used.
Examples include integrations such as:
- Last.fm
- ListenBrainz
- Music recognition providers
- Custom network or proxy configuration
These integrations are separate from Levyra's core playback experience.
Levyra requests Android permissions required by its supported features.
The exact permission set may evolve as features change.
INTERNET
ACCESS_NETWORK_STATE
ACCESS_WIFI_STATE
Used for functionality such as:
- Streaming
- Search
- Metadata
- Lyrics
- Artwork
- Updates
- Network-aware features
FOREGROUND_SERVICE
FOREGROUND_SERVICE_MEDIA_PLAYBACK
WAKE_LOCK
Used to keep music playback working correctly when Levyra is in the background or the screen is off.
These permissions support:
- Background playback
- Media controls
- Playback notifications
- MediaSession
- Android Auto
POST_NOTIFICATIONS
Used for supported notifications such as media playback controls and background operations.
Android controls whether this permission is granted.
READ_MEDIA_AUDIO
Older Android versions may instead use:
READ_EXTERNAL_STORAGE
This allows Levyra to discover and play supported music files stored on the device.
Access is subject to Android's storage permission model.
RECORD_AUDIO
FOREGROUND_SERVICE_MICROPHONE
Used by Levyra's optional music recognition functionality when microphone-based recognition is used.
The microphone is not required for normal music playback.
Levyra can support recognition from device playback on compatible Android versions.
This uses Android's MediaProjection system.
Relevant foreground-service support includes:
FOREGROUND_SERVICE_MEDIA_PROJECTION
Android requires explicit system authorization before screen or playback capture can begin.
Levyra cannot silently bypass this system permission flow.
FOREGROUND_SERVICE_DATA_SYNC
Used for supported long-running data operations such as downloads or synchronization work that Android requires to run as a foreground service.
REQUEST_INSTALL_PACKAGES
Used by builds that support Levyra's application update flow.
Android still controls installation authorization.
Levyra cannot silently install an application update without Android's installation process.
REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
May be used to help maintain reliable background playback on devices with aggressive battery restrictions.
Changing battery optimization behavior remains under Android and user control.
Older versions of Android may use:
WRITE_EXTERNAL_STORAGE
This permission is limited to legacy Android versions where it is required for exporting media files.
Modern Android versions use newer storage mechanisms.
Levyra integrates with Android's media and automotive frameworks.
Android Auto receives the playback information necessary to provide supported media controls and browsing experiences.
It does not require a Levyra cloud account.
Features such as Levyra Jam may communicate with other compatible devices on the same local network.
Local-network functionality is designed for direct device-to-device experiences rather than requiring a centralized Levyra listening server.
Users should only join sessions they trust.
Music recognition requires sending enough information to perform recognition when an external recognition provider is used.
Recognition is an optional feature and is separate from normal playback.
Recognition history can be stored locally by Levyra.
Official Levyra builds may contact GitHub to check for available releases when the update system is enabled.
Distribution-specific builds may handle updates differently.
For example, store or repository builds can rely on their respective update mechanisms.
Core Levyra usage does not require:
- A Levyra account
- A Levyra advertising identifier
- A cloud-hosted Levyra listening profile
- Mandatory social login
- Mandatory telemetry
- Mandatory synchronization with a Levyra server
Android users can remove Levyra's application data using the standard Android application settings.
Uninstalling the application also removes normal application-private data according to Android's storage rules.
Files deliberately exported to public storage, such as downloaded music, may remain because they are intended to be user-owned files.
Backups saved outside Levyra's private application storage may also remain until the user deletes them.
Levyra is open source.
Its implementation, permissions and network behavior can be inspected directly in the repository.
If you discover behavior that appears inconsistent with Levyra's privacy model, please report it with enough information to reproduce the problem.
For ordinary bugs:
Avoid publishing secrets, authentication tokens, private credentials or other sensitive information in a public issue.
Levyra's privacy model is based on a simple idea:
Your listening experience should not require turning your listening habits into a product.
Levyra Wiki
Home · Getting Started · Features · FAQ & Troubleshooting
Development · Architecture · Roadmap · Privacy & Data
GitHub Repository · Latest Release · Issues · Website
Levyra is an open-source music application for Android and Windows.