我读了很多书,但是当一些数据保留在单调类上时,我不明白如何恢复状态。例如

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数据库或将信息写入磁盘。

10-06 02:01