0

我对android有点陌生,我没有找到解决问题的正确方法所需的全局视图。

我想在我的应用程序中包含一个大的 blob 列表。这些 blob 应该可以通过列表中的索引获得,而无需将整个列表加载到内存中。我真正想做的是一个类似字典的应用程序,我需要通过索引访问定义以将它们显示在 ListView 或 PagerAdaper 中,但是有一些 Mo 的数据,我不想全部加载记忆。

我虽然有一些方法,但它们似乎都不是最佳的,我可以使用一些见解:

  • 使用 sqlite 数据库,但根据快速研究,不可能使用资源 sqlite 文件。我必须将数据复制到私人数据库中,这会浪费一些 Mo。
  • 从头开始自己制作:拥有一个包含所有数据的大文件和一个包含每个条目的查找索引的索引文件应该不会太难。

我对 sqlite 在没有数据重复的情况下无法使用是否正确?有没有比从头开始更好的方法呢?

4

1 回答 1

1

我想在我的应用程序中包含一个大的 blob 列表。

从您问题的其余部分的上下文来看,我假设“blob 大列表”将是一种资源。这样做是一个非常糟糕的主意,恕我直言,如果“大 blob 列表”超过 1MB,则完全不会工作。

我会将“blob 大列表”分解为每个 blob 的单个资源,如果单个资源 ID 不足以让您找到所需的内容,则可能有一个单独的资源(原始或 XML)作为您的索引。

IOW,在运行时没有任何好处 - 并且有很多成本 - 将它们全部保存在一个单一的“大 blob 列表”中。

我对 sqlite 在没有数据重复的情况下无法使用是否正确?

是的。

于 2012-11-06T17:01:34.503 回答