phonegap离线存储和压缩

时间:2012-10-26 10:01:53

标签: android iphone ios ipad cordova

Phonegap新手在这里。关于我的申请的情景:

  1. 需要提供包含一些xml数据(1000 xml blob,总共15MB未压缩)
  2. 用户将能够查看和编辑这些xmls
  3. 应用程序的更新不应覆盖(可能已编辑的)xmls
  4. 问题:

    • 对于离线存储,我可以简单地使用我的应用程序的文件吗?或者我应该将这些应用程序捆绑的xmls移动/复制到脱机存储?如果是,哪一个?
    • 由于这种类型的数据是高度可压缩的,我是否可以在步骤1(初始应用程序包)和步骤2中将它们存储为压缩,以防我需要离线存储?

    这些问题的解决方案需要与iPhone,iPad和Android兼容,因此使用Phonegap。

2 个答案:

答案 0 :(得分:2)

如果它是未压缩的15 MB,那么它可能太多,无法存储在您的应用中。您可以使用phonegap storage API's将它们存储在数据库中,但我不知道您是否可以对此数据库进行任何压缩。

我可能会使用PhoneGap File API将它们作为外部文件存储在手机的文件系统中:

http://docs.phonegap.com/en/2.1.0/cordova_file_file.md.html#File

它们在ios和andoid平台上得到很好的支持。

对于压缩,您可以使用诸如JSZip的JS库与文件系统存储协作。我自己还没试过,但它应该有用。

答案 1 :(得分:1)

在iOS中

,您无法修改应用内的文件 但您只需将它们复制到Documents文件夹并在那里修改它们。 如果你想保留所有压缩的内容,你可以解压缩文件,进行修改并在修改后再次压缩。

我相信更新后文档文件夹中的文件保持不变

在Android中,您可以将所有内容复制到存储卡中并执行类似操作。

注意:如果您使用的是Phonegap,则必须为Android和iOS制作自定义插件