Cordova iOS:使用file-API在cordova.file。*目录中创建一个文件

时间:2014-10-15 13:48:29

标签: ios file-io directory phonegap-plugins cordova-plugins

从cordova文件API v1.2.0到重要文件系统目录的URL是使用预定义的cordova.file。*常量提供的。如果我尝试在任何cordova预定义目录中创建一个新文件(例如cordova.file.dataDirectory),那么在尝试调用函数" getFile"时,我会得到代码为5的错误。该文件未创建。

我的JavaScript代码如下:

function FSready(fileSystem) {
    gFileSystem = fileSystem;
    gFileRoot = cordova.file.dataDirectory;
    filepathx = gFileRoot + "csdtest.txt";
    gFileSystem.root.getFile(filepathx, {create: true, exclusive: false}, fileCreated, FSfail);
}

function onDeviceReady() {
    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, FSready, FSfail);
}

我只能创建文件而不提供任何文件路径:

gFileSystem.root.getFile("test.txt", {create: true, exclusive: false}, fileCreated, FSfail);

在这种情况下,文件始终(在模拟器中)在目录

中创建
file:///Users/mac/Library/Application%20Support/iPhone%20Simulator/7.1/Applications/EB4E48F9-69F9-4CE9-AD3E-6E949071BC2D/Library/NoCloud/csdtest.txt

在config.xml中,我有以下内容:

<preference name="iosExtraFilesystems" value="library,library-nosync,documents,documents-nosync,cache,bundle,root" />
<preference name="iosPersistentFileLocation" value="Library" />

我也尝试在iPad上运行此代码并获得相同的结果。我在使用iOS 7.1的Cordova 3.5.0上,我使用的插件版本是org.apache.cordova.file 1.3.2-dev&#34; File&#34;和org.apache.cordova.file-transfer 0.4.8-dev&#34;文件传输&#34;。

感谢您的帮助!

0 个答案:

没有答案