如何在Android中保存并获取自定义对象?

时间:2016-04-13 13:52:03

标签: android gson sharedpreferences reload

本主题How to save a custom Java Object in Android?足以让我的解决方案成功,但没有成功。所以我有一个自定义对象,我想添加到收藏夹列表,这意味着我想在应用程序的任何位置找到我保存的对象(所有活动)。但我不知道如何在我的活动中调用(最喜欢的列表在哪里)我在另一个活动中创建的共享首选项,以及在返回json之后。

3 个答案:

答案 0 :(得分:3)

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); 

将为您提供默认SP。使用GSON将您的自定义对象转换为JSON字符串并将其存储为字符串。稍后获取字符串并使用GSON将其转换为您的自定义对象。

在其他班级

SharedPreferences mPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
String myJson= mPrefs.getString("myproduct")

并使用toObject方法将myJSON字符串转换为对象

答案 1 :(得分:0)

关注共享偏好的Android文档,其中包含有关如何创建可在所有活动中访问的共享首选项的详细信息Android Documentaion on shared preference

答案 2 :(得分:0)

您可以使用(Hawk库)将数据作为键值保存在存储中 -您可以保存所有数据类型和对象,然后随时检索它。 GitHub Hawk Documentation上的链接 *您的数据将在存储中被加密

保存数据

Hawk.init(context).build();
Hawk.put("key", "value");

获取数据

Hawk.init(context).build();
String s = Hawk.get("key");