Android - 进程被杀后还原活动堆栈?

时间:2015-08-01 22:00:20

标签: android android-activity

根据我在互联网上的研究,我发现如果我的应用程序进程被系统杀死,下次用户返回时,系统将恢复活动堆栈。也就是说,根活动之上的任何活动都会保留在那里,但只会重新创建最顶层的活动。 (见here

我通过在监视器(ddms)中杀死我的进程来测试它。我没有看到活动堆栈恢复。仅显示根活动。所以我在这里缺少什么?我还需要实现什么才能恢复堆栈?

我找到了“persistableMode”属性。这就是我需要的吗? docs

还是android:alwaysRetainTaskState? docs

1 个答案:

答案 0 :(得分:1)

主要是取决于用于启动意图的标志

例如

Intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

 /** 
 * If set, this activity will become the start of a new task on this
 * history stack.
 *
 * This flag is generally used by activities that want
 * to present a "launcher" style behavior: they give the user a list of
 * separate things that can be done, which otherwise run completely
 * independently of the activity launching them.
 */

有关详细信息,请参阅API doc:

Tasks and Back Stack

另见: