sharedpreference和内部文件存储之间的主要区别[重复]

问题描述 投票:8回答:4

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

谢谢,

android sharedpreferences
4个回答
12
投票
  • SharedPreference:将私有原始数据存储在键值对中。 (存储小条目/数据)
  • 内部存储器:将私有数据存储在设备存储器中。 (要存储大型数据集)

此处有关存储选项的更多信息:Storage Options

我看到了关于共享首选项的问题。

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


2
投票

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

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

如果要经常访问该值,则可以使用Shared preferences

如果您的数据结构较小且不复杂,则可以进行定向使用Share preferences

如果您只想保存数据,则数据将占用很多内存空间,您只需使用文件即可保存。


1
投票

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

如果要存储很小的值,则可以选择SharedPrefrence。


0
投票

这完全取决于您要执行的操作:如果键/值对的数量很少,请使用“共享首选项”。如果您有大量数据,请使用文件,因为共享首选项在首次使用后将保留在内存中。因此,在其中存储大量数据是一个坏主意;-)。

© www.soinside.com 2019 - 2024. All rights reserved.