我的应用程序在不同的活动之间切换,每个活动在切换到另一个活动后被杀死。这完全正常,但我想要做的是,当用户杀死应用程序时(通过按Back键或以其他方式),它的最后一次运行活动是下次启动应用程序时。 / p>
我试过......
onSaveInstanceState(Bundle bundle)
...但这似乎不适用于其他活动。
还有另一种方法吗?我还考虑过直接编辑清单,但结论是它可能不起作用而且非常脏。
答案 0 :(得分:1)
据我所知,您有3项活动:ActivityA
,ActivityB
和ActivityC
。如果用户通过ActivityB
退出应用,稍后再次启动应用,则需要先ActivityB
启动。
您可以通过两种方式执行此操作。
首先,您可以拥有一个Activity
个占位符,其中包含3个fragments中的一个占位符。然后你可以根据需要替换片段。
第二次,您可以使用SharedPreferences
将最后打开的活动存储在首选项中。您可以在每个onStart()
的{{1}}中执行此操作,并在确定要启动哪个活动时将其读取。
ActivityX
// if(activityName == null)activityName = YourActivityA.getClass()。getName(); ///根据需要开始该活动