
Kickstart Modern Android Development with Jetpack and Kotlin
By :

We've already learned how, whenever a configuration change occurs, our Activity
is recreated, which can cause our UI to lose its state. To bypass this issue and to preserve the UI's state, we ended up implementing a ViewModel
component and hoisted the UI state there.
But what would happen in the case of a system-initiated process death?
A system-initiated process death happens when the user places our application in the background and decides to use other apps for a while – in the meantime, though, the system decides to kill our app's process to free up system resources, which initiates process death.
Let's try to simulate such an event and see what happens:
Figure 2.6 – The RestaurantsScreen composable with favorite selections made