android活动生命周期:如果进程被杀死,可以重新打开内部应用程序活动吗?

时间:2011-04-14 14:11:59

标签: android

我有一个包含多个活动的应用程序,为了正常运行需要在主要活动之后生效(因为主要活动初始化很多东西,例如让用户选择当前项目..)。 / p>

现在,如果用户正在编辑应用程序中的项目,那么转到另一个应用程序,对于内存不足,我的应用程序被杀死,当用户按下后退按钮(并进入上次关闭的活动)时会发生什么?< / p>

我的应用程序将再次启动,但是它是从主要活动开始还是从最后一次打开的应用程序开始(如果它还没有被杀死的那样)?

谢谢......我真的很难为这个生命周期做好准备。

2 个答案:

答案 0 :(得分:1)

将重新创建您应用的最后一项活动,并调用onCreate方法,就像它是全新的一样。

不同之处在于,您需要覆盖onSaveInstanceState并将状态保存在那里。

onCreate被调用时,您可以通过检查数据密钥是否存在来判断您的活动是否真的是新的或者是否被杀死。

请参阅:onSaveInstanceState

答案 1 :(得分:-3)

您可以覆盖活动中的onDestroy()方法(需要内存时调用的方法,Android“杀死”应用程序),看看会发生什么。 AFAICT平台完全杀死了整个过程,意味着所有线程和活动。我猜它不是那么精细。

希望它有所帮助! JQCorreia