Sample project to illustrate usage of Dagger, RxJava, Retrofit, Room and LiveData.
Title : MediaPlay Description : An app to stream songs from API provided by 3rd party vendor Language used : Kotlin
Modules : 1. Core 2. App
Core Module : comprises of all the dependencies used in most of the projects
App Module : specific logic related to the application in question
Libraries used :
- Dagger : Dependency Injection framework from Google
- Retrofit : Networking library
- Picasso : Image loading library
- RxJava : Reactive extensions library
- LiveData : lifecycle aware component which is part of AAC by Google
- Room : Abstraction library built on top of Sqlite Android database.
- ExoPlayer : Media player library
Deployment instructions :
Clone the repo from terminal : git clone https://github.com/alokomkar/RxDaggerMediaPlay.git
or
Download the project from github link : https://github.com/alokomkar/RxDaggerMediaPlay/archive/master.zip
Network Response :
The network response has been put in sample_response.json