我读了很多书,但是当一些数据保留在单调类上时,我不明白如何恢复状态。例如
public class UserDataKeeper {
private static UserDataKeeper instance;
private User mUser;
private UserDataKeeper(){
}
public static UserDataKeeper getInstance() {
if (instance == null) {
instance = new UserDataKeeper();
}
return instance;
}
public User getUser() {
return mUser;
}
public void setUser(User mUser) {
this.mUser = mUser;
}
}
当我的Android应用程序来自后台时,用户数据变为null。我在这里应该怎么做才能不会得到空结果。
唯一的解决方案是使用SQLite,Preference或其他方法保存数据吗?
最佳答案
即使您实现了Singleton(这几乎总是一个糟糕的解决方案),您仍将数据存储在内存中。关闭应用程序后,数据将丢失。如果要永久存储,则可以,您需要拥有一个SQLite数据库或将信息写入磁盘。