阅读更多

socket 接收服务器消息

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.Socket;import java.net.UnknownHostException;import android.annotation.SuppressLint;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;@SuppressLint("HandlerLeak")public class SocketDemo extends Activity {    /** Called when the activity is first created. */    private Button btn_receive;    private TextView txt;    private String line;    private static final String HOST = "192.168.1.101";    private static final int PORT = 9999;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        initControl();    }    private void initControl() {        btn_receive = (Button) findViewById(R.id.btn_receive);        txt = (TextView) findViewById(R.id.txt);        btn_receive.setOnClickListener(new ReceiverListener());    }    @SuppressLint("HandlerLeak")    class ReceiverListener implements OnClickListener {        @Override        public void onClick(View v) {            // TODO Auto-generated method stub            new Thread() {                @Override                public void run() {                    // 执行完毕后给handler发送一个空消息                    try {                        // 实例化Socket                        Socket socket = new Socket(HOST, PORT);                        // 获得输入流                        BufferedReader br = new BufferedReader(                            new InputStreamReader(socket.getInputStream()));                        line = br.readLine();                        br.close();                    } catch (UnknownHostException e) {                        // TODO Auto-generated catch block                        e.printStackTrace();                    } catch (IOException e) {                        // TODO Auto-generated catch block                        e.printStackTrace();                    }                    handler.sendEmptyMessage(0);                }            } .start();        }    }    // 定义Handler对象    private Handler handler = new Handler() {        @Override        // 当有消息发送出来的时候就执行Handler的这个方法        public void handleMessage(Message msg) {            super.handleMessage(msg);            // 处理UI            txt.setText(line);            Log.i("PDA", "----->" + line);        }    };}

 

 转自云代码:yuncode.net/code/c_518ee8bc8b0ae74

更多相关文章

  1. Android(安卓)root权限判断
  2. Android(安卓)的AsyncTask使用
  3. Android(安卓)获取时间实时更新UI
  4. Android(安卓)Java代码执行adb Shell命令
  5. Android(安卓)使用URLConnection提交请求
  6. Android(安卓)SqlLiter使用
  7. android 程序漰溃 后台handle处理类
  8. android 几个快速编译image的指令
  9. Android(安卓)使用 Gmail 来发送邮件

随机推荐

  1. layui 上传图片 移动端 调用相机
  2. android的surfaceflinger原理讲解
  3. android   动态改变图片大小
  4. Android到Androidx记录
  5. android:windowSoftInputMode 介绍
  6. 【Android】 保存图片到系统图库, 并立即
  7. android 开发 获取各种intent (图片、apk
  8. Android开发规范:API接口通用设计规范
  9. XML-layer-list
  10. EditText单击触发onclick事件处理