Skip to content

Latest commit

 

History

History
44 lines (30 loc) · 1.74 KB

README.md

File metadata and controls

44 lines (30 loc) · 1.74 KB

MoviesApp

What is this app?

This app is a client for a web service named “Movies” which you can find here. You can see what this app does in this GIF:

screenCapture

Why did I develop this app?

I developed this app with these goals in mind:

  1. Learn new technologies and libraries
  2. expand my knowledge of libraries and concepts I was already familiar with
  3. use what I’d learned over the years to develop an actual app
  4. engage in the complete process of developing an app, from design to deployment, so I can understand and experience the challenges better (All the billion things that can AND DO go wrong!)

Architecture, libraries, etc.

  • Java (+ Java 8 functional programming features)
  • MVVM architecture
  • Lifecycle Library:
    • LiveData, MutableLiveData, MediatorLiveData (Transformations)
    • ViewModel, ViewModelProvider
  • Room ORM
  • Retrofit Library
  • Paging Library
  • Glide Library
  • Multithreading
  • Animations

How this app reacts to different situations and event

internet disconnections

disconnection

poor internet connection

badConnection

download interruptions

If a user presses the back button in the middle of downloading data of a specific genre’s movies, the download is immediately stopped and later resumed once the user clicks on that genre again

downloadInterruption