【发布时间】:2011-04-20 15:42:48
【问题描述】:
我有一堆用户首选项保存在我的应用程序的单例对象中。示例模型如下所示 -
public class UserContext {
public static final String WEBSRV_IP = "TRIMMED";
public static UserContext instance;
// Contains username, password, if they're valid etc.
private LoginDataModel loginModel;
private ArrayList<FacilityDataModel> model;
private FilterDataModel filters;
private UserContext()
{
}
public UserContext getInstance()
{
if(instance == null) {
instance = new UserContext();
}
return instance;
}
// Getters and setters
}
所以现在,当用户浏览应用程序时,我创建了一堆活动,通过它们的生命周期,利用这些变量并完成。 (例如,在onStart() 方法中,我在呈现活动之前检查用户是否已登录)。
我的问题是,Android 文档似乎建议我在我的 onPause() 方法中备份任何与上下文相关的数据。但是onPause() 也会在我自己创建一个新活动时被调用,并且备份所有 GlobalVariables 似乎很浪费,只是在下一个活动的onStart() 方法中恢复它们。有没有办法确定整个应用程序是否已经进入后台?如果没有,你什么时候真正保存你所有的 Globals?
谢谢,
泰迦。
【问题讨论】:
标签: android activity-lifecycle