Cordova保存图像下载到www文件夹

时间:2017-02-16 20:14:40

标签: javascript html5 cordova

我正在编写一个应用程序,该应用程序在我的cordova应用程序的www / images文件夹中容纳了1000多个小图像(我正在使用英特尔XDK进行构建)。该应用程序需要检查更新并下载用户没有的图像以及其他内容。我希望将新图像保存到与现有图像(www / images)相同的文件夹中,并且无法在任何地方找到如何执行此操作。我找到的只是关于科尔多瓦将照相机图像保存到图库/相机胶卷等的文章。

内容将通过"注入"将它保存到localStorage的脚本。我只是在努力解决这些问题。

1 个答案:

答案 0 :(得分:0)

据我所知,你不能这样做。 www文件夹是应用程序包的一部分,并且是沙箱,以保护它免受写作。这是其他人在这里得到的答案:Cordova Write To WWW Directory (iOS)

您必须使用File API写入应用程序可用的其中一个可写文件区域。您可以在此处找到一些示例:https://github.com/johnwargo/apache-cordova-api-cookbook-code/tree/master/chapter10-file

书中的一些细节:

  

Cordova File API为应用程序提供了所需的方法   与设备的本地目录结构进行交互。 API   公开应用程序可用于浏览文件系统的方法,   读取,写入,复制,移动和删除文件。应用程序无法访问   只是文件系统的任何部分,只有临时和持久性   移动设备上的文件存储位置(如下所述)。

     

Cordova的File API实现部分基于W3C   文件API:目录和系统规范   (www.w3.org/TR/file-system-api)。不是所有的能力   W3C规范已经实现,但API提供了   大多数移动开发人员需要的基本功能。

     

应用程序将使用此API来读取和写入文件   设备文件系统。应用程序可能会使用众多可用中的一个   Web应用程序存储应用程序数据的存储选项,但是   开发人员还可以使用文件系统来持久化应用程序   使用文件系统设置或应用程序数据,编写文本文件   (例如,以XML或JSON格式)应用程序时根据需要   运行。另外,请记住相机(第3章)和Capture   (第4章)API将其文件写入文件系统,应用程序   使用File API根据需要操作这些文件。

     

大多数智能手机为应用程序提供两种不同类型的文件   储存空间。要存储临时文件,设备会公开一个   临时存储位置。对于不可或缺的内容和数据   应用程序的操作,必须在之后仍然可用   应用程序关闭并重新启动应用程序应该使用   持久存储。

     

通常,应用程序可能会将临时存储用于临时存储   数据,作为内存的一部分写入文件系统的数据   管理策略或在分析或操纵a时的交换空间   大量数据。通过临时存储,应用程序可以读取   来自和写入存储区域而不受惩罚,创建和   在可用的存储限制范围内根据需要删除文件   装置。设备OS可以自动清空临时存储   当应用程序关闭或设备重新启动时 - 释放存储空间   其他应用的空间。

     

另一方面,持久存储更稳定;设备操作系统   在重新启动期间和应用程序关闭时保护它。一个   应用程序的持久存储将仅在操作系统清空时清空   应用程序已从设备中卸载。

     

在示例应用程序中,应用程序的UI公开了按钮   用于与不同的文件系统类型进行交互,如图所示   图10.1。从图中可以看出,我使用了jQuery Mobile   应用程序的UI为了简化代码而让jQuery   移动处理渲染文件列表,在页面和页面之间转换   等等。