Android - 具有可序列化对象的 SharedPreferences

2024-05-09

我知道 SharedPreferences 有putString(), putFloat(), putLong(), putInt() and putBoolean()。但我需要存储一个类型的对象Serializable in SharedPreferences。我怎样才能实现这个目标?


接受的答案是误导性的,我们可以使用 GSON 将可序列化对象存储到 SharedPreferences 中。阅读更多相关信息,请访问谷歌-gson https://github.com/google/gson.

您可以使用以下命令在 Gradle 文件中添加 GSON 依赖项:

compile 'com.google.code.gson:gson:2.7'

这里是片段:

首先,创建您常用的共享首选项:

//Creating a shared preference
SharedPreferences  mPrefs = getPreferences(MODE_PRIVATE);

从可序列化对象保存到首选项:

 Editor prefsEditor = mPrefs.edit();
 Gson gson = new Gson();
 String json = gson.toJson(YourSerializableObject);
 prefsEditor.putString("SerializableObject", json);
 prefsEditor.commit();

从首选项获取可序列化对象:

Gson gson = new Gson();
String json = mPrefs.getString("SerializableObject", "");
yourSerializableObject = gson.fromJson(json, YourSerializableObject.class);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android - 具有可序列化对象的 SharedPreferences 的相关文章