![]() Fix an issue with M3SwitchPreference where the switch would not update properly. When reacing M3SwitchPreference, I wanted to make an optimization regarding updating the switch to M3, so I decided to make the preference check if they have already applied the switch, and then ignore it if that's the case. However, I ended up forgetting that ViewHolders tend to need to be re-bound, which resulted in this optimization leading to inconsistent application of the M3 switches. Fix this by removing that optimization. |
||
---|---|---|
.github | ||
app | ||
fastlane/metadata/android/en-US | ||
gradle/wrapper | ||
info | ||
.gitignore | ||
build.gradle | ||
CHANGELOG.md | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
LICENSE | ||
prebuild.py | ||
README.md | ||
settings.gradle |
Auxio
A simple, rational music player for android.
Changelog | FAQ | Licenses | Contributing | Architecture
About
Auxio is a local music player with a fast, reliable UI/UX without the many useless features present in other music players. Built off of Exoplayer, Auxio has a much better listening experience compared to other apps that use the native MediaPlayer API. In short, It plays music.
I primarily built Auxio for myself, but you can use it too, I guess.
The default branch is the development version of the repository. For a stable version, see the master branch.
Screenshots
Features
- ExoPlayer based playback
- Customizable UI & Behavior
- Advanced media indexer that prioritizes correct metadata
- Reliable playback state persistence
- ReplayGain support (On MP3, MP4, FLAC, OGG, and OPUS)
- Material You (Android 12+ only)
- Edge-to-edge
- Embedded covers support
- Search Functionality
- Audio/Headset focus
- Completely private and offline
- No rounded album covers (Unless you want them. Then you can.)
To possibly come in the future:
- Playlists
- Liked songs
- More notification actions
- And other things, probably
Permissions
- Storage (
READ_EXTERNAL_STORAGE
): to read and play your media files - Services (
FOREGROUND_SERVICE
,WAKE_LOCK
): to keep the music playing even if the app itself is in background
Building
Auxio relies on a custom version of ExoPlayer that enables some extra features. So, the build process is as follows:
cd
into the project directory- Run
python3 prebuild.py
, which installs ExoPlayer and it's extensions.- The pre-build process only works with *nix systems. On windows, this process must be done manually.
- Build the project normally in Android Studio.
Contributing
Auxio accepts most contributions as long as they follow the Contribution Guidelines.
However, feature additions and major UI changes are less likely to be accepted. See Accepted Additions for more information.
License
Auxio is Free Software: You can use, study share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.