我有一个启动器活动A,它立即启动第二个活动B并完成。然后,活动B启动活动C并完成。 所以backstack现在只包含Activity C. 当用户按下主页按钮并重新启动应用程序(通过单击图标)而不是将C带到前面时,将调用启动器活动A.现在堆栈变为C-> A. A立即启动B并且最终堆栈看起来是C-> B.
我只想恢复活动C.我已经阅读了任务和返回堆栈指南,但不确定要使用的正确标志。任何帮助表示赞赏。
编辑:启动活动时,我在清单或意图标记中没有任何启动模式标志。
答案 0 :(得分:3)
使用此代码..
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) {
// Activity was brought to front and not created,
// Thus finishing this will get us to the last viewed activity
finish();
return;
}
// Regular activity creation code...
}
此代码始终使应用程序打开您离开的最后一个活动