这篇文章主要演示:在android中如何向服务器发一个get请求,以及开子线程来更新ui,以及Handler发消息和处理消息的使用。

1.创建子线程请求数据:

final String strWebAddr = et_input.getText().toString();

new Thread(new Runnable() {    @Override    public void run() {        try{            URL url = new URL(strWebAddr);            //获取一个连接            HttpURLConnection connection = (HttpURLConnection)url.openConnection();            //设置GET请求            connection.setRequestMethod("GET");            //设置超时时间            connection.setConnectTimeout(5000);            connection.setReadTimeout(1000);            //获取服务器响应码            int ncode = connection.getResponseCode();            if( ncode == 200 ){                InputStream inputStream = connection.getInputStream();                //将流转换成String                String content = Utils.ReadStream(inputStream);                //发消息                Message msg = Message.obtain();                msg.obj = content;                handler.sendMessage(msg);            }        }catch(Exception e){           e.printStackTrace();        }    }});
这个ReadStream函数自己封装的:

public static String ReadStream(InputStream in) throws Exception{    int len = -1;    byte buffer[] = new byte[1024];    ByteArrayOutputStream baos = new ByteArrayOutputStream();    while ((len = in.read(buffer)) > 0 ){        baos.write(buffer,0,len);    }    //关闭流    in.close();    String content = new String(baos.toByteArray());    return content;}

Handler的创建和使用():

private Handler handler = new Handler(){    @Override    public void handleMessage(Message msg) {        String content = (String)msg.obj;        tv_show.setText(content);        super.handleMessage(msg);    }};


联网需要在清单文件中配置:



更多相关文章

  1. Android的Message机制
  2. Android的Activity获取fragment和fragment的组件
  3. Android屏幕信息获取
  4. android中使用properties文件配置
  5. Android开发之消息处理机制(二)——消息循环
  6. android 按钮倒计时读秒
  7. Android(安卓)Handle解析
  8. Android(安卓)中如何关闭线程
  9. Bitmap和Drawable相互转换方法

随机推荐

  1. Android(安卓)多线程注意事项
  2. Android(安卓)adb setuid提权漏洞的分析
  3. android 线程间通信
  4. android短彩信数据库设计(三)
  5. Android(安卓)API 中文 (54) —— Filterab
  6. android 零散笔记不定期更新 v16
  7. Android(安卓)1.5 1.6 2.0 2.1 2.2 2.3 3
  8. 简单的 Android(安卓)拍照并显示以及获取
  9. Android: Android(安卓)Architecture
  10. Android(安卓)应用程序的结构