Simple music player app using media3 library, clean architecture and best best practices
Your Music
Description
This is a simple music player app which lets you browse and play sound tracks saved on your android device, it provides features like playing music in background, controlling music through notification etc. This project along with GuardianNews were the two projects I have completed as an exercise in the process of my android bootcamp.
Stack
Tools | Link |
---|---|
? Kotlin | Kotlin |
? Media3 | Loading & Playing Music |
?️ Hilt | DI |
?️ Glide | Loading Pictures |
Design Process
The new Jetpack media3 was the core library used in this project. MediaStore was used for providing an real-time access (using Flow api & kotlin coroutines) method to the music files from device storage, MediaSessionService for managing audio playback along with media3 in-built exoplayer and media session. It was tried to keep the design scalable and robust while avoiding unnecessary complications.
Visuals
music list | single music | permission |
---|---|---|
notification | ||
Contributing
Feel free to contribute to this project by pointing out any bugs, design flaws, updating for best practices or etc using issues or pull requests. I hope this app can be used as a reference for other learners or even be used to actually listen to some quality music ?