我的应用程序的用户大部分时间都在后台运行它。经过很长一段时间后系统会杀死我的应用程序,当他们试图进入我的应用程序时,它会重新开始。如何检索我的最后一点应用程序被杀之前?
答案 0 :(得分:0)
覆盖Activity.onPause()
并在其中放置一些代码保存到数据库或SharedPreference
当前活动的类名。然后从您的主要活动中读回数据库或SharedPreference
并开始相应的活动。
答案 1 :(得分:0)
您可以将共享偏好设置用于此类任务。
在onStop()函数中,在共享首选项中设置一个标志,如:
SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
editor.putString("killed", "yes");
在你的onStart()中,检索首选项并按如下方式检查:
SharedPreferences prefs = getPreferences(MODE_PRIVATE);
String flag = prefs.getString("killed", null);
if(flag!=null && flag.equals("yes")
{
//activity is resumed
}
else
{
//activity is started from scratch
}
有关共享偏好设置的更多信息,请参阅此处的官方文档:http://developer.android.com/guide/topics/data/data-storage.html#pref
**这是一篇类似的帖子,名为“应用程序杀死Android后恢复”Here
答案属于 - Anup Cowkur **
答案 2 :(得分:0)
当活动进入后台时,唯一可以保证 onPause()将被调用。在Android杀死您的应用之前,无法保证将调用onStop()或onDestroy()。您可以做的是将应用程序的状态,设置,重要数据等写入SharedPreferences文件或数据库,并在onResume()中检索它。