使用Cordova文件插件

问题描述 投票:1回答:1

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

  • 获取外部文件
  • 一旦可用,使用window.requestFileSystemto访问沙盒文件系统。这将返回文件系统对象,该对象具有filesystemattribute对象`{name:“persistent”,rood:DirectoryEntry}
  • 将上面的目录条目与获取的图像blob一起传递给fs.root.getFile('example.png',{create:true,exclusive:true},fileCreated,fileCreationFailed)...

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

我要么在这里误解了一些东西,要么缺少一些文档。在任何一种情况下,我都希望有人能够让我走上正轨。

android cordova html5-filesystem
1个回答
0
投票

作为outlined in the cordova-plugin-file documentation,你应该能够在调用window.TEMPORARY时使用window.requestFileSystem参数获取对应用程序缓存文件夹的引用,然后可以使用该文件夹来读/写文件:

window.requestFileSystem(window.TEMPORARY, 5 * 1024 * 1024, function (fs) {
    console.log('file system open: ' + fs.name);
    createFile(fs.root, "newTempFile.txt", false);
}, onErrorLoadFs);
© www.soinside.com 2019 - 2024. All rights reserved.