【问题标题】:Major Difference between sharedpreference and internal file storage [duplicate]sharedpreference和内部文件存储之间的主要区别[重复]
【发布时间】:2012-06-28 15:59:13
【问题描述】:

我想知道哪个更适合存储: 共享首选项或内部文件存储。 哪个更快? 他们中的任何人是否有任何记忆问题?

谢谢,

【问题讨论】:

  • 你为什么不做一个测试看看哪个更快?关于内存问题,如果你的代码很好,那么这两种方法都不会有任何问题

标签: android sharedpreferences


【解决方案1】:
  • SharedPreference: 将私有原始数据存储在键值对中。 (用于存储小条目/数据)
  • 内部存储:将私人数据存储在设备内存中。 (用于存储大型数据集)

更多关于存储选项的信息:​​Storage Options

我看到了一个关于共享偏好的问题。

问题: 每当您在使用 SharedPreference 时遇到强制关闭/应用程序崩溃时,SharedPreference 将为空。在这里您可以阅读更多相关信息:Shared Preferences reset when the app is force closed or crashes

【讨论】:

  • +1。好答案。我有个问题。 Shared Preferences 的 XML 文件可以被有电话的人导出和查看吗?我问这个是因为我打算将当前用户的用户名和密码存储在共享首选项中
  • @Ashwin 检查:(getSharedPreferences with MODE_PRIVATE)[developer.android.com/reference/android/content/…, int)]
  • MODE_PRIVATE 表示其他应用程序无法访问共享首选项。但是我可以将手机连接到 PC 并转到 DDMS(Eclipse) 并从那里将此文件导出到 PC。 (对于 DATABASE 可以这样做——可以将 DB 导出到 PC)
【解决方案2】:

嗯,Shared preferences 最后也保存在了internal file storage 中。

Share preferenceskey-value对一样,将数据保存在内存中,最后由系统保存到内部文件存储中。

如果要频繁访问值,可以使用Shared preferences

如果你的数据结构小而不复杂,你可以指导 使用Share preferences

如果你只是想保存数据,而且数据会占用很多内存 空间,你可以用文件来保存。

【讨论】:

  • Shared Preferences 的 XML 文件可以被有电话的人导出和查看吗?我问这个是因为我打算将当前用户的用户名和密码存储在共享首选项中。
【解决方案3】:

请阅读与数据存储相关的Android document

如果您想存储非常小的值,那么您可以选择 SharedPrefrence。

【讨论】:

    【解决方案4】:

    这完全取决于您喜欢做什么:如果您的键值对数量很少,请使用共享首选项。如果您有大量数据,请使用文件,因为共享首选项将在首次使用后保存在内存中。因此,在其中存储大量数据是个坏主意;-)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-16
      • 2011-03-29
      • 1970-01-01
      • 2018-11-10
      • 2020-04-05
      • 2013-11-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多