Android Day05-网络编程之文件上传

Android文件上传实现

  分析:利用抓包工具查看文件上传发现,文件上传的请求体十分的复杂,根本难以用

    HttpURLConnection、HttpClient来实现。但是用AsyncHttpClient就能很轻易的实现了,只要

    在RequestParams对象里面添加一对键值对,值存储文件的路径即可上传了。

  AsyncHttpClient文件上传源代码

     记得先要导一下包

    //创建AsyncHttpClient对象
    AsyncHttpClient asyncHttpClient = new AsyncHttpClient();
        
        //创建RequestParams对象,封装要上传的数据或文件。
	RequestParams params = new RequestParams();

	params.put("music", uploadFile); // Upload a File
        //执行post方法。
        
        //注意最后一个类new的是参数子类的的实现类AsyncHttpResponseHandler
	asyncHttpClient.post(getApplicationContext(), servletPath,
				params, new AsyncHttpResponseHandler() {

		@Override
		public void onSuccess(int statusCode,Header[] headers, byte[] responseBody) 
		{
			if(statusCode == 200)
			{
				Toast.makeText(getApplicationContext(), "文件上传成功", 0).show();
			}
			else
			{
				Toast.makeText(getApplicationContext(), "服务器忙", 0).show();
			}
		}

		@Override
		public void onFailure(int statusCode,Header[] headers, byte[] responseBody,Throwable error) 
		{
		
		}
	});

   

你可能感兴趣的:(Android课程)