将已填充的Listview项目保存在磁盘上并在启动App时重新加载它们

时间:2015-02-21 12:56:43

标签: android listview serialization android-contentprovider

在我的Android应用程序中,我有一个列表视图。每个列表视图项都有一些文本和文本以及位图。这个列表是每次启动应用程序时都有来自我后端的内容的人口。

我想要做的是在应用关闭时将这些已填充的项目保存到磁盘上,并在下次从磁盘启动应用时重新加载它们。该列表可以从后端进一步填充。 (就像facebook一样)

我如何实现这一目标?人们通常会建议两种方法:

  • Content Provider和sqlite-db
  • 对象缓存和序列化。

我想了解什么是更合适的任务方式?我很感激任何链接/ tuts或代码片段来演示这个概念。

2 个答案:

答案 0 :(得分:0)

以下是我对此的最佳答案。毫无疑问,这两种技术都可行。 使用SQL数据库的优点是您可以通过简单地形成查询字符串来检索一组数据或记录。数据库当然可以存储大量数据。

对象缓存/序列化或文件技术往往具有有限的数据。它们不会自然地通过组匹配进行查询(例如 SQL Where 子句)。我知道您可以使用XML模式文件,但性能可能会成为一个问题。 如果您只有很少的数据,那么我使用XML文件来支持查询关系搜索。

答案 1 :(得分:0)

我会发布我的解决方案。

我找到了一个提供有点中间立场的软件包:简单的功能和简单的检索:www.rushorm.com

它也允许查询,以及存储位图和大文本。