Skip to content
Gabor Varadi edited this page May 2, 2017 · 15 revisions

Welcome to the simple-stack wiki!

Overview

Simple-Stack provides an easy way to keep track of your state in a persistent manner - across configuration change and process death alike.

But surviving in Android is not easy, and providing a general-purpose solution for tracking your state also isn't either.

The following tasks need to be done:

  • on configuration change, a backstack must be restored as a non-configuration instance, or preserved using a retained fragment

  • on process death, the state must be reloadable from the saved instance state bundle

  • after onPause(), you shouldn't be able to send new navigation operations, but they should be queued up

  • if onPause() froze navigation, then onResume() or onPostResume() should unfreeze it

  • animations (state transition) aren't immediate, so a state change can be an asynchronous operation


With that in mind, Simple-Stack provides means to easily hide all that bogus and concentrate on your backstack and your active state.

Simple-Stack also provides some sensible defaults to start out with for a Single-Activity view-based architecture.

Clone this wiki locally