Android application concept to search movie's info using OMDB API and save result to local DB
Project keeps focus on testing all layers (data sources, repository, ViewModel, LiveData and Fragments) using AndroidX test library in conjunction with Dagger. AndroidInstrumentedTestSuite holds all instrumented tests for local SQLite DB (GreenDao) and Fragments (Espresso tests). JUnitTestSuite holds all junit tests for remote API testing (Retrofit) and ViewModels.
- Search screen - allows search movies by title and displays list of results
- Info screen - displays full movie's info
Please find app-release.apk and demo recording file inside release folder
- Kotlin - primary project language
- Navigation component - handles all navigation aspects, allows to avoid boilerplate code with fragments transaction, backstack etc.
- Android Architecture Components - the core of MVVM pattern
- AndroidX testing - library to test all layers of app code
- Dagger - dependency injection framework
- RxJava - simple way to manage data chains
- Retrofit - to perform API call
- GreenDao - ORM, to cache data in local SQLite DB
- Glide - images loading library with cache possibility
- Timber - awesome logging on top of Android's normal
Log
class - Floating Search View - the compromise between native search and autocomplete view with suggestions