【问题标题】:Phonegap Android Filetransfer Error Code 3Phonegap Android 文件传输错误代码 3
【发布时间】:2023-04-06 23:15:01
【问题描述】:

我正在开发适用于 Android 的移动应用程序,它使用 Dave Johnson 的 Facebook Connect 插件 (https://github.com/davejohnson/phoneg...)、Camera 和 FileTransfer。基本上,用户单击一个按钮来拍照(电话相机启动,用户拍照),然后这张照片被上传到服务器。问题是第一次一切都很好,但是当我再次点击按钮拍摄第二张照片时,照片无法上传到服务器,返回的错误来自 FileTransfer - 错误代码 3。

我已设置 options.chunkedMode = false;这没有帮助。

我知道这是一个连接错误,我在 /res/xml/cordova.xml 文件中将要上传图片的域列入白名单。我在网上搜索了很多以找到一个可行的解决方案,还有其他人抱怨这个,但没有提供可行的解决方案。我正在使用 Cordova 1.8.1(我还使用 1.8.0, 1.7.0, 1.6.1, 1.5.0 进行了测试)。我使用较新版本的 Phonegap 进行了测试,例如 1.9.0,但无法构建项目 - facebook 插件不适用于此版本的 Phonegap。我正在使用 Emulator Android 4.1 (API 16) 进行测试。在查看详细日志时,我尝试了不同的方法使其工作,但我无法使其工作。我正在努力寻找解决方案,因为它非常重要,请帮我解决这个问题。预先感谢您的回答。

【问题讨论】:

  • 解决了这个。同样的问题....
  • 您好,您找到解决上述问题的方法了吗?如果有,请分享。

标签: android cordova upload


【解决方案1】:

您可以尝试以下任何一种:

在你的 AndroidManifest.xml 文件的标签中设置 android:debuggable="true"。

按照 cmets 部分中的建议,设置而不是只设置 *,如下所示:

<!-- <access origin="https://example.com" /> allow any secure requests to example.com -->
<!-- <access origin="https://example.com" subdomains="true" /> such as above, but including subdomains, such as www -->
<!-- <access origin=".*"/> Allow all domains, suggested development use only -->

从; https://stackoverflow.com/a/12011782/610880

【讨论】:

  • 感谢 Braunson 的快速回答,但您的建议没有帮助。我的结论是,如果配置文件或源代码中有问题,它不会第一次成功上传。奇怪的是,第一次使用一种算法一切正常,但在第二次单击 FileTransfer 时,使用完全相同的算法会出现错误。请提出另一种解决问题的方法,这不是一个有效的解决方案。
【解决方案2】:

这是 phonegap 库中的一个未修复的错误,因为没有修复错误,我不得不通过我的工作来解决它(基本上在每次替代失败时重新上传):

ft.upload(path,
          encodeURI("http://yourdomain.com/upload.php"),
            function(result) {
                alert("Uploaded");
            },
            function(error) {
        ft.upload(path,
        encodeURI("http://yourdomain.com/upload.php"),
        function(result) {
                alert("Uploaded");                  
        },
        function(error) {
            alert("Error uploading image");
        },
        { fileName: name, fileKey: "file", mimeType: "image/jpeg", chunkedMode: false }, true);     
                },
                { fileName: name, fileKey: "file", mimeType: "image/jpeg", chunkedMode: false }, true);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多