我将文件(图片,视频和音频)从Android端上传到PHP服务器。它适用于小文件。但是对于大文件,它会产生意想不到的结果,比如文件上传,但在android端,它会给出超时异常。 所以请帮助我,我如何解决文件上传的所有场景。我如何使用HttpMultipart实体以及如何针对不同大小的文件设置相对超时。 我的代码是:
File myFile = new File(filePath);
RequestParams params = new RequestParams();
try {
params.put("uploaded_file", myFile);
} catch (FileNotFoundException e) {
}
URL=getResources().getString(com.newing.R.string.server_adderess)+URL+fileType+"&lessonID="+LessonID;
client.post(URL, params, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(String response) {
Log.w("async", "success!!!!");
UtilityFunctions.showNotification(getApplicationContext(),
"File uploading completed.");
stopSelf();
}
@Override
public void onFailure(Throwable error) {
Log.w("async", "failure!!!!");
UtilityFunctions.showNotification(getApplicationContext(),
"File couldn't upload. Please try later.");
stopSelf();
}
});
答案 0 :(得分:0)
你可以尝试使用Ion是一个很棒的异步网络和图像加载库https://github.com/koush/ion
上传文件的简单示例
Ion.with(getContext(), "https://koush.clockworkmod.com/test/echo")
.uploadProgressBar(uploadProgressBar)
.setMultipartFile("filename.zip", new File("/sdcard/filename.zip"))
.asJsonObject()
.setCallback(...)
查看项目网站以获取更多示例和wiki