【发布时间】:2010-05-03 06:07:35
【问题描述】:
我有一个 android 应用程序,它会定期(例如每周一次)从服务器以 XML 格式下载内容。内容由应用使用,不同的活动使用内容的不同部分。
我的问题是一个设计问题,我应该将数据保存在 SQlite 中还是将其保存为 XML 文件,哪个读取速度更快?
应用一次只能使用一个内容片段,这意味着后续的 XML 内容下载会替换旧的内容。
【问题讨论】:
标签: xml android performance sqlite
我有一个 android 应用程序,它会定期(例如每周一次)从服务器以 XML 格式下载内容。内容由应用使用,不同的活动使用内容的不同部分。
我的问题是一个设计问题,我应该将数据保存在 SQlite 中还是将其保存为 XML 文件,哪个读取速度更快?
应用一次只能使用一个内容片段,这意味着后续的 XML 内容下载会替换旧的内容。
【问题讨论】:
标签: xml android performance sqlite
如果可能的话,我会选择 SQLite。根据我的经验,随着文件变大,手持设备上的 XML 文件操作会变得非常慢(记住我在 Windows Mobile 系统上工作过,但我认为所涉及的原理是相同的)。
在 SQLite 数据源中读取速度会更快,但是您必须确定它的重要性。这多久会真正影响系统?将您的 XML 文件转换为 SQLite 文件需要做多少额外的工作?转换是否必须进行一次或每次?
我决定为那个项目使用 XML,我认为现在,在项目发布大约 6 个月后,我会做出不同的选择。文件操作每次最多需要几秒钟,用户报告它非常烦人并且工作流程中断。但是,在该项目上,文件操作每隔几分钟左右发生一次。如果间隔较长或在后台运行(用户没有注意到),那么我认为使用 SQLite 没有很多显着优势。
我建议您多考虑一下您的选择,因为一旦项目发布,几乎不可能改变您的决定。
【讨论】: