我们正在尝试使用现有 Web 应用程序中的默认文件上传选项将文件从 phonegap 移动应用程序上传到 Web 服务器
我们尝试使用电话间隙构建 apk
我们的问题是如何使用phonegap从手机上传文件?上传文件是否需要任何phonegap插件?
我们正在尝试使用现有 Web 应用程序中的默认文件上传选项将文件从 phonegap 移动应用程序上传到 Web 服务器
我们尝试使用电话间隙构建 apk
我们的问题是如何使用phonegap从手机上传文件?上传文件是否需要任何phonegap插件?
是的。要从网络服务器上传或下载文件,您需要使用文件传输插件。添加以下插件。
cordova plugin add cordova-plugin-file-transfer
上传文件的示例代码是
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 = fileURL.substr(fileURL.lastIndexOf('/') + 1);
options.mimeType = "text/plain";
var params = {};
params.value1 = "test";
params.value2 = "param";
options.params = params;
var ft = new FileTransfer();
ft.upload(fileURL, encodeURI("http://some.server.com/upload.php"), win, fail, options);
将这些添加到项目中:
在 app/res/xml/config.xml :
<plugin name="File" value="org.apache.cordova.FileUtils" />
<plugin name="FileTransfer" value="org.apache.cordova.FileTransfer" />
在 app/AndroidManifest.xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
cordova plugin add cordova-plugin-file-chooser
cordova plugin add cordova-plugin-file
添加上述插件后,html 输入文件可以正常工作,无需更改现有 Web 应用程序代码