HttpClient
来源:互联网 发布:手机淘宝哪里修改地址 编辑:程序博客网 时间:2024/06/13 08:57
HttpClient 是Http 协议的一种 包装类。 可以支持HTTPS,COOKIE。
但是android 已经不推荐使用HttpClient。 所以只是简要介绍, 然后提供一个实例
HttpClient需要以下6个步骤:
1. 创建HttpClient 的实例。
2. 创建某种连接方法,如HttpGet,HttpPost, HttpPut 等等。
3. 用HttpClient 实例去执行execute 方法, 返回HttpResponse。
4. 从HttpResponse 中取出数据流。
5. 处理数据流。
6. 释放数据流
public class MainActivity extends AppCompatActivity { private ImageView view; private Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); view=(ImageView)findViewById(R.id.view); btn=(Button)findViewById(R.id.btn); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String imgUrl = "http://p1.meituan.net/deal/a5c0180d48419fe09f8edb0f267a7e7767069.jpg"; new asyn().execute(imgUrl); } }); } public void onResume(){ super.onResume(); } private Bitmap getImageBitMap(String url){ URL imgurl = null; Bitmap bitmap = null; HttpURLConnection urlConnection; HttpClient client; try { client=new DefaultHttpClient(); HttpResponse response=client.execute(new HttpGet(url)); InputStream inputStream=response.getEntity().getContent(); /* imgurl=new URL(url); urlConnection=(HttpURLConnection)imgurl.openConnection(); urlConnection.setRequestMethod("GET"); urlConnection.connect(); InputStream inputStream=urlConnection.getInputStream(); OutputStream outputStream=urlConnection.getOutputStream(); bitmap = BitmapFactory.decodeStream(inputStream);*/ bitmap=BitmapFactory.decodeStream(inputStream); inputStream.close(); // urlConnection.disconnect(); } catch( IOException e){ e.printStackTrace(); } return bitmap; } class asyn extends AsyncTask<String, Void, Bitmap> { @Override protected void onPreExecute() { super.onPreExecute(); view.setImageBitmap(null); } @Override protected void onPostExecute(Bitmap result) { super.onPostExecute(result); if (result != null) { view.setImageBitmap(result); } } @Override protected Bitmap doInBackground(String... params) { Bitmap b = getImageBitMap(params[0]); return b; } }}
阅读全文
0 0
- HttpClient
- HttpClient
- httpClient
- HttpClient
- HttpClient
- HttpClient
- HttpClient
- HttpClient
- HttpClient
- HttpClient
- HttpClient
- httpclient
- httpclient
- HttpClient
- HttpClient
- httpclient
- httpclient
- HttpClient
- Block 到底啥时候崩溃
- 基于Vue2.0+Vue-router构建一个简单的单页应用
- java程序员需要看的书
- 一切从ServerBootstrap开始
- PHP学习笔记10:函数
- HttpClient
- 初学java
- Vue-router2.0基础实践
- java学习(19) -- 数据库MySql(一)
- Xp系统下sqlServer 2000中1433端口打不开的问题
- 20170530学习笔记整理
- 安装php7
- 地形和道路数据的简单处理
- ubuntu16.04如何把菜单栏放到下面