In this episode, we talk about the different parts of Android architecture components. We’ve had episodes on Room and the paging library, so in this one, we thought we’ll touch a little on Lifecycle Owners & Observers, ViewModels, and LiveData. Akshay Chordiya helps break it down. Listen on!
Show Notes
Lifecycle
- Handling lifecycles with Lifecycle-Aware Components
- Lifecycle Owner
- Lifecycle Observer
- Best practices for lifecycle-aware components
- Caveat: handling onStop events
ViewModels
Code snippet for a ViewModelFactory:
class UserVMFactory(
val user: MyUser
) : ViewModelProvider.Factory {
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
return when {
modelClass.isAssignableFrom(UserVM::class.java) ->
UserVM(user) as T
else -> throw IllegalArgumentException("Unknown ViewModel class")
}
}
}
LiveData
Misc
- Android Architecture Components Deep Dive Course on Caster.IO
- Fragmented – Room episode with Florina
- Fragmented – AAC Paging library with Florina
Sponsors
- Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
- @Akshay_Chordiya [twitter.com]
- @fragmentedcast [twitter.com]
- @donnfelker and 📷 donnfelker
- @kaushikgopal and 📷 kaushikgopal