【问题标题】:Android data storage choice for a few fixed amount of entries, sqlite or sharedpreferences?Android数据存储选择几个固定数量的条目,sqlite或sharedpreferences?
【发布时间】:2013-04-24 14:16:15
【问题描述】:

我想制作一款类似于 Google keep 的应用,它具有以下功能:

  1. 存储每个笔记和照片的名称,内容,背景颜色(不包括待办事项,有点复杂),使用TextView作为笔记,自定义视图(TextView + ImageView ) 用于照片;

  2. 条目可以通过拖放改变位置;

  3. 最多只能保存10个条目。如果存在开仓位置,应用程序将使用占位符填充该位置,并在一个屏幕上显示所有 10 个位置(无滚动条)。

在我看来,这两种方法都存在一些缺点:

Sharedpreferences:数据量太大,有点复杂;

Sqlite:数据条目是有限的。此外,我认为TableLayoutGridView 更合适,因为我希望它们在没有滚动条的情况下显示在一个屏幕上。

那我应该选择哪种数据存储方式,sqlite 还是 sharedpreferences?感谢您的帮助。

【问题讨论】:

  • 不要混淆数据的显示方式和数据的存储位置。此外,您存储在共享首选项中的任何内容也可以存储在 sqlite 中,反之亦然。

标签: android database sqlite sharedpreferences


【解决方案1】:

SharedPreferences 不适合。正如您所注意到的,它不适用于如此数量和复杂性的数据。顾名思义,它用于存储用户的偏好,而不是他们的数据。

注意SQLite支持BLOB类型,可用于存储图片等

但您不仅限于这两个选项。第三个选项是将您的数据以您选择的任何格式存储在一个文件中,例如您可以将 Java 对象序列化为文件。由于您将处理有限数量的数据,因此您不一定需要 SQLite 的功能。

但总的来说,我认为 SQLite 是您的最佳选择。由于上述原因,它比 SharedPreferences 更好,并且比第三个选项更好,因为它内置在 Android 中并且被广泛使用。

【讨论】:

  • 感谢您的建议,我会尝试 SQLite 的方式。
猜你喜欢
  • 2013-05-12
  • 1970-01-01
  • 2019-05-30
  • 2010-12-17
  • 1970-01-01
  • 2013-09-27
  • 2015-02-16
  • 1970-01-01
相关资源
最近更新 更多