【发布时间】:2014-02-22 22:30:14
【问题描述】:
Cordova 3.3 回调突然停止工作。从 2.9 升级到 3.3 后,我在使用 cordova 的插件时遇到了一些问题。在让一切恢复正常后,通过删除每个 phonegap 插件,并仅使用 cordova 命令行构建项目。但是,现在一些插件再次停止工作。请参阅下面的代码
$("#getPicture").click(function(){
navigator.camera.getPicture(gotPic, failHandler,
{quality:45, destinationType:navigator.camera.DestinationType.DATA_URL,
sourceType:navigator.camera.PictureSourceType.PHOTOLIBRARY, targetWidth: 270, targetHeight: 270});
});
function gotPic(data) {
alert("in got pic") // doesn't get executed even if I set a timeout there
}
function failHandler(e){
alert("in fail"); // same as above.
}
我在请求文件系统时遇到了同样的错误
window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, gotFS, fail);
function gotFS(fileSystem) {
// create false before
alert("in gotFS");
fileSystem.root.getFile(src, {create: false}, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
alert("in entry");
fileEntry.file(gotFile, fail);
}
function gotFile(file){
alert("in gf");
readDataUrl(file);
}
function readDataUrl(file) {
var reader = new FileReader();
reader.onloadend = function(evt) {
alert("inside onloaded");
base = evt.target.result;
alert("base " + base);
};
reader.readAsDataURL(file);
}
function fail(error) {
alert(error.code);
}
这之前运行良好,但我不明白为什么它现在停止了。由于我之前一直在努力使插件正常工作,因此我尝试删除了三个插件,但我认为这一切都搞砸了。
cordova plugin rm org.apache.cordova.camera
cordova plugin rm org.apache.cordova.file-transfer
cordova plugin rm org.apache.cordova.file
前两个插件被删除没有任何问题,但是当我试图删除文件插件时,我得到了: 删除插件 org.apache.cordova.file 没有要删除的悬空插件。
当我运行cordova plugins ls时,插件还在。
【问题讨论】:
-
file 是文件传输插件的依赖项,所以当您删除文件传输时可能会自动删除文件?问题是为什么要使用插件,为什么要删除它?
-
我想我需要再次添加插件。然而,我发现了我的错误。我已经包含了 两次。没想到还有话要说。。
标签: android file-upload plugins cordova callback