Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android活动生命周期:如果进程被终止,是否可以重新打开内部应用程序活动?_Android - Fatal编程技术网

android活动生命周期:如果进程被终止,是否可以重新打开内部应用程序活动?

android活动生命周期:如果进程被终止,是否可以重新打开内部应用程序活动?,android,Android,我有一个包含多个活动的应用程序,为了正常运行,需要在主活动完成后重新启动(因为主活动初始化了许多事情,例如,让用户选择当前项目..) 现在,如果用户在应用程序中编辑一个项目,然后转到另一个应用程序,由于内存不足,我的应用程序被终止,当用户按下后退按钮(并进入最后关闭的活动)时,会发生什么 我的应用程序将再次启动,但它是从主活动开始还是从上次打开的活动开始(如果它还没有被杀死的话会这样) 谢谢。。对于我来说,真正获得这个生命周期是相当困难的。你可以在你的活动中覆盖onDestroy()方法(当需要

我有一个包含多个活动的应用程序,为了正常运行,需要在主活动完成后重新启动(因为主活动初始化了许多事情,例如,让用户选择当前项目..)

现在,如果用户在应用程序中编辑一个项目,然后转到另一个应用程序,由于内存不足,我的应用程序被终止,当用户按下后退按钮(并进入最后关闭的活动)时,会发生什么

我的应用程序将再次启动,但它是从主活动开始还是从上次打开的活动开始(如果它还没有被杀死的话会这样)


谢谢。。对于我来说,真正获得这个生命周期是相当困难的。

你可以在你的活动中覆盖
onDestroy()
方法(当需要内存时调用该方法,Android“杀死”应用程序),然后看看会发生什么。AFAICT平台完全终止进程,即所有线程和活动。我猜它没有那么颗粒状

希望有帮助!
JQCorreia

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

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

当调用
onCreate
时,您可以通过检查数据密钥的存在来判断您的活动是否真的是新的,或者是从被终止后恢复过来的


请参阅:

您的意思是,如果我意识到活动是在被销毁后创建的,我应该完成()并手动打开主应用程序活动,对吗?您甚至不需要这样做-如果应用程序已完全停止,您的主活动将启动。我的意思是,当你第一次设置你的活动时,你不会阅读捆绑状态中的内容。这有意义吗?还要注意,如果您的活动的布局因为方向的改变而改变,那么这也是您用来维护整个活动状态的相同机制:)