В моем приложении определенный код результата используется для завершения всего приложения, когда это необходимо (т.е. для завершения всех действий, которые принадлежат моему приложению в стеке действий). Все действия запускаются с помощью startActivityForResult(). Код результата фиксируется в onActivityResult() и оттуда передается следующему действию в стеке действий. Это сводится к тому, что каждое действие завершается само по себе, когда используется определенный код результата.
Отлично работает.. во всех случаях, кроме одного:
Рассмотрим стек Activity, состоящий из A -> B -> A. Последний A (справа в последовательности) запускает процедуру, завершая себя и устанавливая код результата для завершения других Activity. После того, как B закончил и передал код результата первому A (оставил A в последовательности), оказывается, что onActivityResult() не вызывается.
Стоит отметить, что onDestroy() еще не вызывалась для самого верхнего A в стеке (правого A в последовательности), когда достигается первый A.
Как исправить или обойти эту проблему?
android:launchMode
для действий A или B вAndroidManifest.xml
? - person inazaruk   schedule 05.07.2011