使用 Cordova 文件插件



在我的Android Cordova应用程序中,我想从本地缓存中提供常用的图像文件,以节省带宽和/或在没有网络可用时。 科尔多瓦文件插件似乎非常适合这项工作。 但是,一旦从外部源获取缓存的图像文件,我很难确定如何创建缓存的图像文件。 据我所知,步骤如下

  • 获取外部文件
  • 一旦可用,请使用window.requestFileSystem访问沙盒文件系统。 这将返回文件系统对象,该对象filesystem属性为对象'{name:"persistent",rood:DirectoryEntry}
  • 将上面的目录条目以及获取的图像 blob 传递给 fs.root.getFile('example.png', {create: true, exclusive: true},fileCreated,fileCreationFailed) ...

这是我不清楚的最后一步。 从我对插件文档的阅读来看,创建缓存图像文件的正确位置是cache文件夹。 但是,如果我要发出上述root.getFile我肯定会尝试在根文件夹中创建图像文件 - 这可能会失败,因为该位置不是读写的。

我要么在这里误解了某些内容,要么缺少一些文档。 无论哪种情况,我都希望这里有人能够让我走上正轨。

如 cordova-plugin-file 文档中所述,您应该能够在调用window.requestFileSystemget 时使用window.TEMPORARY参数,然后您可以使用该引用来读取/写入文件:

window.requestFileSystem(window.TEMPORARY, 5 * 1024 * 1024, function (fs) {
console.log('file system open: ' + fs.name);
createFile(fs.root, "newTempFile.txt", false);
}, onErrorLoadFs);

最新更新