$cordovaFile.checkDir 说文件夹不存在但是 $cordovaFile.createDir 说文件夹已经存在
$cordovaFile.checkDir says folder does not exist but $cordovaFile.createDir says folder already exists
我正在尝试使用此处记录的 ngCordova 文件插件:http://ngcordova.com/docs/plugins/file/,但出现奇怪的行为。
我正在尝试创建一个文件夹,如果它不存在的话。我正在使用以下方法测试它的存在:
$cordovaFile.checkDir(cordova.file.dataDirectory, 'inbound')
现在这个 returns NOT_FOUND_ERR
所以我随后尝试通过调用创建文件夹:
$cordovaFile.createDir(cordova.file.dataDirectory, 'inbound', false);
但是这个returnsPATH_EXISTS_ERR
为什么 checkDir 告诉我它不存在,但是 createDir 告诉我它确实存在?
注意:这是使用 Android 设备。
那些是承诺,你是这样使用它们的吗:
$cordovaFile.checkDir(cordova.file.dataDirectory, "inbounds")
.then(function (success) {
// success
alert("status " + success);
}, function (error) {
// error
});
你的 config.xml 也配置了吗?
<preference name="iosExtraFilesystems" value="library,library-nosync,documents,documents-nosync,cache,bundle,root" />
<preference name="AndroidExtraFilesystems" value="files,files-external,documents,sdcard,cache,cache-external,root" />
好的,尽管 aorfevre 开始了整个球的滚动,但我将其添加为答案。我遇到的问题主要是我没有在我的 config.xml 文件中添加必要的行来提供对设备文件系统的访问。
虽然这样做之后我仍然遇到问题,但我做错的关键是在现有安装之上构建和重新部署应用程序。一旦我手动卸载应用程序并重新部署它,它就开始正常工作了。
我正在尝试使用此处记录的 ngCordova 文件插件:http://ngcordova.com/docs/plugins/file/,但出现奇怪的行为。
我正在尝试创建一个文件夹,如果它不存在的话。我正在使用以下方法测试它的存在:
$cordovaFile.checkDir(cordova.file.dataDirectory, 'inbound')
现在这个 returns NOT_FOUND_ERR
所以我随后尝试通过调用创建文件夹:
$cordovaFile.createDir(cordova.file.dataDirectory, 'inbound', false);
但是这个returnsPATH_EXISTS_ERR
为什么 checkDir 告诉我它不存在,但是 createDir 告诉我它确实存在?
注意:这是使用 Android 设备。
那些是承诺,你是这样使用它们的吗:
$cordovaFile.checkDir(cordova.file.dataDirectory, "inbounds")
.then(function (success) {
// success
alert("status " + success);
}, function (error) {
// error
});
你的 config.xml 也配置了吗?
<preference name="iosExtraFilesystems" value="library,library-nosync,documents,documents-nosync,cache,bundle,root" />
<preference name="AndroidExtraFilesystems" value="files,files-external,documents,sdcard,cache,cache-external,root" />
好的,尽管 aorfevre 开始了整个球的滚动,但我将其添加为答案。我遇到的问题主要是我没有在我的 config.xml 文件中添加必要的行来提供对设备文件系统的访问。
虽然这样做之后我仍然遇到问题,但我做错的关键是在现有安装之上构建和重新部署应用程序。一旦我手动卸载应用程序并重新部署它,它就开始正常工作了。