我需要在很多地方获取用户对象,其中包含很多字段。登录后,我想保存/存储这些用户对象。我们如何实现这样的场景呢?
我无法像这样存储它:
SharedPreferences.Editor prefsEditor = myPrefs.edit();
prefsEditor.putString("BusinessUnit", strBusinessUnit);
您可以使用 gson.jar 将类对象存储到共享首选项。
您可以从以下位置下载这个 jar谷歌-gson https://github.com/google/gson/releases
或者在 Gradle 文件中添加 GSON 依赖项:
implementation 'com.google.code.gson:gson:2.8.8'
你可以找到最新版本here https://github.com/google/gson/releases
创建共享首选项:
SharedPreferences mPrefs = getPreferences(MODE_PRIVATE);
To save:
MyObject myObject = new MyObject;
//set variables of 'myObject', etc.
Editor prefsEditor = mPrefs.edit();
Gson gson = new Gson();
String json = gson.toJson(myObject);
prefsEditor.putString("MyObject", json);
prefsEditor.commit();
检索:
Gson gson = new Gson();
String json = mPrefs.getString("MyObject", "");
MyObject obj = gson.fromJson(json, MyObject.class);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)