【问题标题】:PhoneGap 2.5 FileTransfer.download callbacks don't firePhoneGap 2.5 FileTransfer.download 回调不会触发
【发布时间】:2023-04-02 12:25:01
【问题描述】:

我对为什么这不起作用感到困惑。我的代码如下。我做了一个 FileTranser.download() 调用,它永远不会达到成功或失败的功能。我可以看到进度 console.logs 甚至达到 1。我还可以看到调试消息,说明文件已成功从 CDVDelegate 类传输。在我的 iPad 模拟器中,我什至可以看到文件已创建。我只是无法让我的成功处理程序触发。

我只能在 PhoneGap 1.8 左右找到提到这个问题。这仍然是一个悬而未决的问题还是我持有错误?

谢谢

var fileName ='my-file.pdf';
var ft = new FileTransfer();
var docPath = localStorage.getItem(CONSTANTS_LOCALSTORAGE_LOCAL_FILE_PATH);
var encodeduri = encodeURI(CONSTANTS_WEBAPI + 'Documents/GetDocument?DocFilename=' +fileName + '&DocumentType=' + documentType);
console.log(encodeduri);

ft.onprogress = function(progressEvent) {
if (progressEvent.lengthComputable) {
  console.log('download progress: '+(progressEvent.loaded / progressEvent.total));
} };

ft.download(
  encodeduri,
  docPath+"/"+fileName,
  function(entry){
    //------ Never reaches this
    console.log('download ok: '+entry.fullPath
    onSuccessCallback(entry);
  },
  function(error) {
        //-------or this
        alert("download error source " + error.source);
        alert("download error target " + error.target);
        alert("upload error code" + error.code);
        onFailCallback(error);
    }, 
  false);

【问题讨论】:

    标签: cordova jquery-mobile download file-transfer


    【解决方案1】:

    如果有人遇到此问题,我通过从设备中删除应用程序并刷新 Xcode 项目来修复它。

    【讨论】:

    • 什么意思,“刷新 xcode 项目”。我什至不在我的科尔多瓦项目中使用 xcode,我只是让科尔多瓦在需要时调用它。 xcode中是否有“刷新”选项?我确实尝试从设备中删除应用程序并重新绑定(cordova run ios),但这并没有解决问题。
    • 如果您确实对此有可靠的解决方案,您应该通知科尔多瓦人,因为存在与此相关的未解决问题:issues.apache.org/jira/browse/CB-6905issues.apache.org/jira/browse/CB-6525
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-26
    • 2010-10-09
    相关资源
    最近更新 更多