静态单例 class 变为空

static singleton class becoming null

我看了很多书,但无法理解当一些数据保持单调时如何恢复状态class。例如

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 应用程序来自后台用户数据变为空时。我应该怎么做才能得到空结果。

唯一的解决方案是使用 SQLite、Preference 或其他方式保存数据吗?

即使您正在实施单例(这几乎总是一个糟糕的解决方案),您仍然将数据存储在内存中。应用程序关闭后,数据将丢失。如果你想要持久存储,那么是的,你需要有一个 SQLite 数据库,或者将你的信息写入磁盘。