在Android杀死应用程序后如何重启应用程序

5
据我所知,如果用户长时间不与应用程序交互,Android会杀死它,以节省内存。当用户返回应用程序时,将再次显示上一个活动。我想做的是,在这种情况下,如果我的应用程序被杀死了,我总是希望从我的主要活动重新启动。但只有在其他情况下才能实现这一点,而不是在其他场景中。
是否有任何方法可以实现这一点?例如在清单中?
提前感谢!
1个回答

8

您可以通过检查onCreate方法中的bundle是否为null来检查Activity是否已经恢复:

if(savedInstanceState != null)

如果它不是null,那么你的活动已经从被杀死的状态中恢复过来。
如果你只是暂停了你的活动,onResume()会在onCreate()之上被调用。
有关活动生命周期,请参阅文档hereenter image description here

但那意味着我必须在每个活动中都进行检查,对吗?这是一个好主意,谢谢。我会尝试找到更通用的东西,但我认为你的方法可以帮助。 - Finuka
3
如果您想对每个活动(Activity)执行此操作,只需创建一个继承自Activity的类,在onCreate()方法中添加重置代码,并调用super,然后将您的修改后的类扩展到所有活动中(它们已经调用了super,所以一切都会很顺利)。 - Graeme
如果你旋转Activity会发生什么?它会被重新创建,但其Bundle不会为空。 - DennisVA

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接