一旦用户登录,我应该使用类实例(序列化)还是单例来存储userInfo

时间:2017-07-20 09:06:09

标签: java android ios objective-c

我想知道在登录后存储用户信息的更好方法是什么。我应该将数据解析为Serizaled对象类吗?或者我应该创建一个单身人士。一旦我登录,大多数情况下我会从服务器获得大约12-13个对象,但是其中2-3个在整个应用程序中使用,其他的不常见。

1 个答案:

答案 0 :(得分:0)

您有几种选择。请在此处阅读:https://developer.android.com/guide/topics/data/data-storage.html

在您的情况下,您可以在此处使用SharedPreferences:https://developer.android.com/guide/topics/data/data-storage.html#pref

    SharedPreferences sharedPreferences = context.getSharedPreferences("FILE_NAME",
            Context.MODE_PRIVATE);

要设置值: (.commit()而不是.apply()如果​​你关心putString是否成功)

    SharedPreferences sharedPreferences = context.getSharedPreferences(COOKIE_SP_FILE_NAME,
            Context.MODE_PRIVATE);
    if (sharedPreferences != null) {
        sharedPreferences.edit().putString("KEY", "VALUE").apply();
    }

要检索值:

    SharedPreferences sharedPreferences = context.getSharedPreferences("FILE_NAME", Context.MODE_PRIVATE);
    if (sharedPreferences != null) {
        String theString = sharedPreferences.getString("KEY", "DEFAULT_VALUE");
    }

其中" DEFAULT_VALUE"如果没有" KEY"关键是找到了。