1

如果我想在我的应用程序中保存大数据,例如 rss 提要或主题

我必须使用 SQLite 还是 SharedPreferences

剂量 SharedPreferences 将信息保存为共享信息?像任何其他应用程序一样可以使用它们吗?

4

4 回答 4

1

在这种情况下,您最好使用该SQLite选项,该选项旨在存储大量数据,而共享首选项旨在以键值对的形式存储相对少量的数据。

并不是这个名字有点令人困惑,但这意味着这些首选项是共享给您的所有应用程序活动而不是其他应用程序的。

于 2013-03-26T23:14:22.280 回答
1

不,您可能需要某种类型的数据库或存储文件。共享首选项用于保存("key", value)成对的持久数据,例如登录 ID 或某种状态。您不会在其中存储“大量”数据。即使它关闭,它也会在您的应用程序中保留数据。您可以在此处阅读有关存储选项的更多信息

如果您想与其他应用程序共享数据,那么您可能需要查看Content Providers

于 2013-03-26T23:14:26.337 回答
1

http://developer.android.com/guide/topics/data/data-storage.html

Shared Prefs 用于更少的键值项,更易于使用。它可以是私有的或公共的。你决定。

SQLite 适用于大量数据,使用起来更复杂。它是私人的。

于 2013-03-26T23:15:09.060 回答
1

SharedPreferences应该只用于存储原始和有限的数据,而SQL设计用于结构化和大量数据。当您想要存储大量数据时,您可能还想要搜索或使用它进行其他有用的转换,因此SQL您想要使用它,因为它提供了这些功能。SharedPreferences是哑巴key-valuekey-values持有者,没有真正的处理功能。

SharedPreferences不与其他应用程序共享,但有可能(虽然从未打算)允许其他应用程序通过一些额外的工作来访问它们。

可以将您的应用程序配置为其他应用程序的服务提供者。这允许外部应用程序使用您的私有SQL-DB(或更抽象的 API)。也可以(并且建议)限制对您的数据库的访问,没有第三方应用程序能够弄乱您的宝贵数据。

于 2013-03-26T23:19:09.263 回答