An Android application to learn latest technologies in android world!
MusicManager is an Android application for those who want to get familiar with the latest technologies in Android World.
This application is designed to find singers and their top albums. I used the api from last.fm website (you can find the details in the api section). There are 4 main pages:
- Saved albums : shows albums saved by user. works also in offline mode
- Search artist
- Top albums : shows top albums of the selected artist.
- Album details : shows details of the selected album
Technologies that have been used in this projects are :
- MVVM
- Room
- ViewModel
- Dark/Light Mode
- DI via Hilt
- Retrofit
- Kotlin Coroutines
- Kotlin
- LiveData
- Navigation
- Single Activity
- Safe Args
- DiffUtils
- Binding
- Paging3
All the api's has provided by the last.fm website. for more information please visit their website.
Unfortunately the API that I used is not reliable enough. there is no integer unique identifier for albums, or artists. The mbid field is a string id and as we know its not as good as integers for being used as a Primary Key. And also you can find lots of cases that even this field is null! That's why I have used names(Artists, Albums, Tracks) to retrieve and save data in the room database.
MusicManager is released under the Apache License 2.0. See LICENSE for details.
Copyright (c) 2019 Pouya Heydari