加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Android使用HttpClient下载图片

发布时间:2020-05-26 02:21:18 所属栏目:Java 来源:互联网
导读:Android使用HttpClient下载图片

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

HttpURLConnection与HttpClient的区别:
/**
	*通过Get获取网页内容
	*
	*@paramurl
	*如:http://preview.quanjing.com/is002/ev601-025.jpg
	*@return
	*@throwsClientProtocolException
	*@throwsIOException
	*@date2014.05.10
	*/
	publicstaticBitmapgetHttpGetBitmap(Stringurl)
			throwsClientProtocolException,IOException{
		Bitmapbitmap=null;
		//新建一个默认的连接
		HttpClientclient=newDefaultHttpClient();
		//新建一个Get方法
		HttpGetget=newHttpGet(url);
		//得到网络的回应
		HttpResponseresponse=client.execute(get);

		//如果服务器响应的是OK的话!
		if(response.getStatusLine().getStatusCode()==HttpStatus.SC_OK){
			InputStreamis=response.getEntity().getContent();
			bitmap=BitmapFactory.decodeStream(is);
			is.close();
		}
		returnbitmap;
	}
<uses-permissionandroid:name="android.permission.INTERNET"/>
packagecom.dzt.downloadimage;

importjava.io.IOException;
importjava.net.MalformedURLException;

importorg.apache.http.client.ClientProtocolException;

importandroid.app.Activity;
importandroid.graphics.Bitmap;
importandroid.os.AsyncTask;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.ImageView;

importcom.dzt.downloadimage.utils.HttpUtils;

publicclassMainActivityextendsActivityimplementsOnClickListener{

	privateBitmapmDownloadImage=null;
	privateImageViewimage=null;
	privatedownloadImageTasktask;
	privateboolean_isExe=false;

	@Override
	protectedvoidonCreate(BundlesavedInstanceState){
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		initWidgets();
		task=newdownloadImageTask();
	}

	@Override
	protectedvoidonStop(){
		//TODOAuto-generatedmethodstub
		super.onStop();
		if(_isExe){
			task.cancel(true);//取消操作
		}
	}

	privatevoidinitWidgets(){
		image=(ImageView)findViewById(R.id.img);
		Buttonbtn=(Button)findViewById(R.id.download_btn);
		btn.setOnClickListener(this);
	}

	@Override
	publicvoidonClick(Viewv){
		//TODOAuto-generatedmethodstub
		switch(v.getId()){
		caseR.id.download_btn:
			if(!_isExe){
				task.execute("http://preview.quanjing.com/is002/ev601-025.jpg");//执行异步操作
				_isExe=true;
			}
			break;

		default:
			break;
		}
	}

	classdownloadImageTaskextendsAsyncTask<String,Integer,Boolean>{

		@Override
		protectedBooleandoInBackground(String...params){
			//TODOAuto-generatedmethodstub
			System.out.println("[downloadImageTask->]doInBackground"
					+params[0]);
			//try{
			//mDownloadImage=HttpUtils.getNetWorkBitmap(params[0]);
			/

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读