使用volley请求数据很简便,但遇到上传文件就麻烦那可不好,同时使用多个网络请求类库也是不太建议的。所以这里就给出了一种解决方法,也要借助一个jar包,这里用到的是httpmime(点击下载),主要用到的是MultipartEntity类,可以对请求参数进行封装。
主要是继承volley的Request类,然后通过使用httpmim的MultipartEntity类对文件参数进行封装,这里实现了一个参数名对应一个文件,
一个参数名对应多个文件,如果还要多个参数名对应多个文件可以自己试着实现一下哈
package com.hrtac.testupload; import android.util.Log; import com.android.volley.AuthFailureError; import com.android.volley.NetworkResponse; import com.android.volley.Request; import com.android.volley.Response; import com.android.volley.VolleyLog; import com.android.volley.toolbox.HttpHeaderParser; import org.apache.http.entity.mime.MultipartEntity; import org.apache.http.entity.mime.content.FileBody; import org.apache.http.entity.mime.content.StringBody; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.nio.charset.Charset; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 功能: * * @author yanzi E-mail: yanzi1225627@163.com * @version 创建时间: 2015-08-09 下午4:32 */ public class MultipartRequest extends Request<String>{ private MultipartEntity entity = new MultipartEntity(); private Response.Listener<String> mListener; private List<File> mFileParts; priv

本文介绍如何使用Volley在Android中上传图片,包括单个和多个图片的上传。借助httpmime库中的MultipartEntity类,实现了对请求参数的封装,避免了额外引入网络请求库。详细代码示例展示了如何扩展Volley的Request类来处理文件上传,尽管无法直接展示服务器交互结果,但提供了截图作为验证。

7031

被折叠的 条评论
为什么被折叠?



