Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在phonegap和jquery mobile中上传任何类型的文件?_Android_Jquery Mobile_File Upload_Cordova - Fatal编程技术网

Android 如何在phonegap和jquery mobile中上传任何类型的文件?

Android 如何在phonegap和jquery mobile中上传任何类型的文件?,android,jquery-mobile,file-upload,cordova,Android,Jquery Mobile,File Upload,Cordova,我正在phonegap android中创建一个应用程序,我想在其中向服务器上传一个文件。我想要的是,当用户单击上载按钮时,将打开一个选项对话框,用户将从中选择要上载的文件,然后当用户单击保存按钮时,文件将上载。该对话框将像普通窗口一样,就像我们在桌面上单击邮件中的“附加”按钮时看到的一样。 谁能告诉我如何在安卓手机上做到这一点? 感谢您的帮助 提前感谢。使用phonegap文件传输方法 FileTransfer对象允许您向服务器上载或从服务器下载文件 属性 onprogress:每当传输新数据

我正在phonegap android中创建一个应用程序,我想在其中向服务器上传一个文件。我想要的是,当用户单击上载按钮时,将打开一个选项对话框,用户将从中选择要上载的文件,然后当用户单击保存按钮时,文件将上载。该对话框将像普通窗口一样,就像我们在桌面上单击邮件中的“附加”按钮时看到的一样。 谁能告诉我如何在安卓手机上做到这一点? 感谢您的帮助


提前感谢。

使用phonegap文件传输方法 FileTransfer对象允许您向服务器上载或从服务器下载文件

属性

  • onprogress:每当传输新数据块时,使用ProgressEvent调用。(功能)

  • 方法

    • 上传:将文件发送到服务器

    • 下载:从服务器下载文件

    • 中止:中止正在进行的传输

    样本 // !! 假设变量fileURI包含设备上文本文件的有效URI

    var win = function (r) {
        console.log("Code = " + r.responseCode);
        console.log("Response = " + r.response);
        console.log("Sent = " + r.bytesSent);
    }
    
    var fail = function (error) {
        alert("An error has occurred: Code = " + error.code);
        console.log("upload error source " + error.source);
        console.log("upload error target " + error.target);
    }
    
    var options = new FileUploadOptions();
    options.fileKey = "file";
    options.fileName = fileURI.substr(fileURI.lastIndexOf('/') + 1);
    options.mimeType = "text/plain";
    
    var params = {};
    params.value1 = "test";
    params.value2 = "param";
    
    options.params = params;
    
    var ft = new FileTransfer();
    ft.upload(fileURI, encodeURI("http://some.server.com/upload.php"), win, fail, options);
    
    您可以使用

    var source =  navigator.camera.PictureSourceType.PHOTOLIBRARY;
    navigator.camera.getPicture(successFn, errorFn, { quality: 50,
            destinationType: this.photoDestinationType.FILE_URI,
            sourceType: source,
            mediaType: navigator.camera.MediaType.ALLMEDIA  });
    

    更多信息检查

    如果要上传.pdf、.png、.jpg等文件,我应该怎么做,.txt bcz这将取决于用户,他/她想要上传什么类型的文件,所以我想要的是,它将打开SD卡,然后用户将选择用户想要上传的内容。在fileURI中,如何设置目录路径以选择文件,如果我们使用navigator.camera,则用户将只能选择图像文件,否则将被删除能够选择任何扩展文件上传抱歉问你这样的问题,我是新来的。如果你能给出一个完整的例子,我会很高兴。