共享首选项和SQLite

时间:2018-01-21 02:21:57

标签: android android-studio

我想确认一下我对sharedPreference和SQLite的理解。请帮帮我。

共享偏好

  1. 将私有原始数据存储在键值对中。
  2. 用于存储少量数据
  3. 数据存储在xml文件中,没有加密。因此它不安全。
  4. 能够通过其他应用访问。不安全。
  5. SQLite的

    1. 不需要任何服务器,它本地存储在移动设备中。
    2. 可用于存储少量或大量数据。
    3. 存储的数据已加密。因此更安全。
    4. 无法在应用外访问。因此更安全。
    5. 如果有任何错误,请纠正我。谢谢。

3 个答案:

答案 0 :(得分:1)

SP-1。是正确的。 SQLite-1也是如此。但是SQLite不能直接存储布尔值,最小值是1个字节,可以用作布尔值。 SQLite可以将字节数组存储为BLOB,而不是可以存储的数据类型非常相同。

SP-2。基本上是正确的,SQLite-2也是如此。但是,您可以认为可以在共享首选项中有效地保存大量数据。当它归结为它时,它们都是文件。

3/4。数据以相同的保护(使用SQLite的默认值)存储,该保护是App的私有。但是,可以选择加密数据库。必须提供其他应用程序的访问权限。显然,有根设备是个例外。

简而言之,它们非常相似,只是当SQLite在可管理性功能中超越共享首选项时,结构化数据。

答案 1 :(得分:0)

你在某个地方是正确的,所以我想补充一点。

共享偏好:

  1. 共享偏好也很安全。如果您将共享首选项设置为private_mode
  2. Storing cache memory ..
  3. 中的数据
  4. 共享首选项只能存储键值配对,而SQLite数据库则更灵活。
  5. <强> SQLite的

    1. SQlite在移动设备上提供数据库,就像另一个RDBMS一样。如果卸载该应用程序。该数据库也将被删除。
    2. 我们无法直接看到我们的数据库,因此您需要一些应用程序(需要ROOT权限)。
    3. 有关详细信息,请visit here

答案 2 :(得分:0)

这不是真的,因为我们无法分辨共享偏好和SQLite之间的差异。 共享首选项类似于Windows注册表,当我们想要存储一些小配置数据时,我们使用共享首选项,它是安全的,有很多方法可以关闭其他应用程序的访问。

但SQLite是一个数据库,你正在使用的主要数据应该存在,它是安全的,并且速度快,保存和检索数据非常快速和容易。

祝你好运