[英]Android how to save and restore state of Activity when calling finish()?
[英]Android - how to finish activity when system tries to restore it after killing
我写了一个游戏,其中有活动A(主菜单)和活动B(游戏屏幕)。
有时Android会杀死我的应用程序。 然后,重新启动时,Android会尝试使用默认值还原活动B,这当然在当前是无效的。
我知道我应该保存和还原实例状态,但是有太多变量和其他需要注意的事情,我只是不想这样做。
我将游戏进度保存在onStop()方法中,因此,我想在系统尝试恢复活动B时简单地完成活动B,然后将用户返回到可以加载上次保存的游戏的主菜单。
长话短说,我编写了这段代码,它可以工作。 但是我不确定这段代码是否安全并且在所有情况下都能正常工作。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (savedInstanceState!=null) {finish(); return;}
....
为了使它更整洁并避免以后出现意料之外的问题,建议您将一个布尔值传递给onSaveInstance()并在onCreate()中将其读回,并基于该finish()进行Activity。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.