$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 文件中添加必要的行来提供对设备文件系统的访问。

虽然这样做之后我仍然遇到问题,但我做错的关键是在现有安装之上构建和重新部署应用程序。一旦我手动卸载应用程序并重新部署它,它就开始正常工作了。