我有以下代码将图像存储在S4
目录“myApp”中function gotFileEntry(fileEntry){
var gotFileSystem = function(fileSystem) {
alert("got file Sys: " + fileSystem.name);
fileSystem.root.getDirectory("myApp", {
create : true
}, function(dataDir) {
alert("got dir :" + dataDir.fullPath);
alert("got image file entry: " + fileEntry.fullPath);
// move the file
fileEntry.moveTo(dataDir, "1.jpg", null, failFS);
}, failFS);
};
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFileSystem,failFS);
}
function SaveImage(){
// curImageURI has value of imageURI from onPhotoURISuccess()
window.resolveLocalFileSystemURI(curImageURI, gotFileEntry, failFS);
}
“myApp”目录的S4路径:/ storage / emulated / 0 / myApp
curImageURI中的值:/storage/emulated/0/Android/data/com.apps.myApp/cache/1392602140698.jpg
以下是我收到的警报:
得到文件Sys:持久的 得到了dir:// myApp
得到图像文件条目:/1392602140698.jpg
我在fileEntry.moveTo(...)上面得到以下错误。
System.err java.io.FileNotFoundException:源不存在
我不明白我哪里出错了。如果有人能帮助我,我真的很感激。 提前谢谢。
答案 0 :(得分:1)
您的代码是正确的。这是与phonegap 3.3.0较旧版本相关的错误。请参阅发行说明:
Phonegap (Cordova) 3.4.0 Release notes
升级您的手机版本。
MAC / Linux:$ npm update -g phonegap
Windows:C:> npm update -g phonegap
从头开始创建项目并测试您的代码,它应该工作。
phonegap create test
在创建的目录中输入:
cd test
为Android构建:
phonegap build android
希望它有所帮助!
答案 1 :(得分:0)
我遇到了一个非常相似的问题。
在我的相机api通话中,我正在使用targetWidth: ,targetHeight:
调整图片大小
我不断得到源不存在的错误。
我删除了宽度和高度,它可以正常工作。