存储Chrome Packaged App的图像

时间:2015-02-17 15:22:49

标签: google-chrome-app

我正在开发一个Chrome打包的应用程序,我必须下载并将千兆字节的图像存储到本地持久存储中。有什么办法吗?我正在使用IndexedDB来保存其他数据。

1 个答案:

答案 0 :(得分:1)

首先,Chrome应用程序不是为了在硬盘上存储千兆字节的数据而设计的。想想那些硬盘只有16Gb的chromebooks用户。

但如果您仍想在应用程序中存储图像,则可以选择本地文件系统。至于我,我创建了一个简单的Web组件<img is="external-image">,这使得:

  1. 使用md5 / sha1
  2. 创建URL哈希
  3. 检查此文件是否已下载到本地文件系统
  4. 如果已经下载,请使用FileEntry.toURL()获取此FileEntry的URL
  5. 否则,使用XHR获取此文件,其中responseType =&#39; blob&#39;并将此blob保存到本地文件系统中。回复URL.createObjectURL(blob);
  6. 示例实施是here。顺便说一句detachedCallback有助于完美地管理创建的URI - 您可以在此回调中撤消它们,从而帮助您的应用程序清理内存。