1. App really big
2. Images-> 1 MbĀ
https://picsum.photos/v2/list/
Ā
Download -> Retrofit
2. Glide -> Download image
name {
n1: "Harry"
ImageURL: "http://link.com/img.jpg
}
3. RecyclerView -> show images
4. Caching -> offline
User Repository
Images Repository
ViewModel
View
retrofit.getData()
retrofit.getData()
livedata.postData(imagesList)
Ā
State.setState = LOADING
State.setState = LOADED
state.data = imagesList
Ā
5 Layers of a Project
Steps
Ā
1. API ready
2. UIĀ
3. Connect all 3 Seemlessly
1. Production -> Play Store / App Store
2. CI / CD -> Pushed your code to GitHub
Ā
Push -> Automatically -> 1 button ->
1. CD: Deploy -> Ship it to customer (play store)
2. CI: All the tests we write should be ready as well
return flow
flow.collect()
state.collect()