Ну выходит bundle самый надежный способ. Единственное, что этот способ не дает это восстановление показа прогресса , если конечно не хранить и не проверять флаги. Но вопрос. Зачем тогда нужен мокси? Чтобы легко восстанавливать даже то состояние, которое придется регулировать флагами , но в ситуации когда система не убивает процесс?
Мокси восстанавливает за вас состояние экрана, когда пересоздаётся активити, но не умирает процесс. Это намного более частый случай, чем смерть процесса, и его нужно обрабатывать обязательно, а на смерть процесса многие просто забивают, потому что это происходит редко, и если уж произошло, то пользователь как-нибудь переживёт тот факт, что состояние сбросилось.
Разумеется, есть случаи, когда смерть процесса нужно обрабатывать. Например, пользователь заполнял длинную заявку, состояние которой нужно сохранить, иначе он очень огорчится. Тут как раз можно использовать bundle или любое другое персистентное хранилище данных. Но делать это для всего состояния каждого экрана - дело очень муторное и сложное, и, скорее всего, не стоящее таких усилий.
С тем же прогрессом - если приложение умерло, то оно больше ничего не делает, и ни о каком прогрессе там речи быть не может. Значит, и флаг этот хранить не нужно :)