尝试在Android中使用ng-cordova移动文件时没有任何反应

时间:2016-02-03 12:30:30

标签: javascript android cordova filesystems ngcordova

我试图移动存储在"临时文件中的图像"目录到文件系统中创建的目录,但没有任何反应,承诺不会返回错误和成功,绝对没有任何反应。

我的应用程序中添加了cordova文件插件:

enter image description here

我使用Android Studio在我的设备中调试了应用程序,我在log cat中看到了错误:

enter image description here

"成功时出错callbackId:File285873816:TypeError:fileSystem.getFile不是函数"在source:file:///android_asset/www/cordova.js

我发出警告,在ng-cordova.js的回调函数中显示fileSystem对象,而且这个对象不包含getFile()函数:

$window.resolveLocalFileSystemURL(path, function (fileSystem) {
    alert("fileSystem " + JSON.stringify(fileSystem));

有人可以帮助我吗?

3 个答案:

答案 0 :(得分:1)

您的 JSON 文件不是格式正确。检查所有这些。

在我的情况下,我在最后一个“}”之后的Json文件末尾看到了无意义的文本(“ asd”) 因此,我添加了控制台日志并检测到哪个JSON错误。并删除其中的错误文本。

答案 1 :(得分:0)

确保您在项目中实际安装了该插件。根据我的经验,ng-cordova有助于集成,但您仍需要添加插件。

答案 2 :(得分:0)

这是我的错误,在函数moveFile中,我在我的服务的moveFrom参数中发送了带有文件名的目录。正确的方法只设置目录:

$cordovaFile.moveFile(moveFrom, currentFileName, cordova.file.dataDirectory + moveTo, newFileName)
  .then(function (success) {
      alert("Yeah Success " + JSON.stringify(success));
  }, function (error) {
      alert("Fucking error " + JSON.stringify(error));
  });

Cordova文件可能会返回无效的目录错误。

感谢您的关注。