【问题标题】:Saving the contents of a List in Android在 Android 中保存列表的内容
【发布时间】:2011-03-27 21:35:19
【问题描述】:

我需要将列表的内容保存在活动中,以便下次打开该活动时,已添加的列表值仍然存在。我还希望能够在我的应用程序中的任何位置访问列表的内容。

显然 sharedPreferences 只允许我保存字符串,我想保存字符串数组。实现这一目标的最佳方法是什么?

[数据库是唯一的出路吗??]

【问题讨论】:

    标签: android persistent-storage


    【解决方案1】:

    我总是将更大的东西“打包”到 JSON,在你的情况下,JSON 数组可能是最好的主意。

    因此,您会将数据从列表移动到 JSONArray,将其存储在您喜欢的位置,并在需要时将其读取为 JSONArray(因为所有 JSON 对象都可序列化为 String),并从中构建您的列表.或者,如果可以的话,您甚至可以使用这个 JSONArray 而不是将其转换为列表。

    【讨论】:

    • 我需要一个“线程安全”机制。默认情况下这是持久的吗?还是我也必须做储蓄部分??
    • SharedPreferences 是线程安全的。我不确定事务机制在这里是如何工作的,但看起来调用 edit() 来获取编辑器不会阻塞其他访问,所以在 SharedPreference 上操作并在不同线程中调用 commit() 将导致最后你会从最后的这个线程中获得这个值。但我不确定它是否能回答你的问题。
    猜你喜欢
    • 1970-01-01
    • 2013-06-10
    • 1970-01-01
    • 1970-01-01
    • 2019-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多