android 30行

 //消息转到UI线程

final Handler handler = new Handler(){

           @Override public void handleMessage(Message msg){
               Toast.makeText(getApplicationContext()
                       , msg.getData().getString("msg")
                       , Toast.LENGTH_SHORT).show();
           }
       } ;




       new android.os.AsyncTask(){
           @Override
           protected Object doInBackground(Object[] params) {
               try {
                   // cln连接服务端
                   Socket cln = new Socket("192.168.191.1", 6666);
                   //cln.getInputStream表示从连接的另一方获取信息,封装读入
                   BufferedReader in = new BufferedReader(new InputStreamReader(cln.getInputStream()));
                   //cln.getOututStream表示自己的消息发送,封装写出
                   PrintWriter out = new PrintWriter(cln.getOutputStream());
                   //向外面发送"Hello I am from java!" ,进入缓冲区
                   out.println("Hello I am from java!");
                   //刷新以此缓冲区,将信息发送出去
                   out.flush();
                   //获得message的构造方法
                   Message m = Message.obtain();
                   //创建一个Bundle实例对象b,类似map类型的管道
                   Bundle b = new Bundle();
                   //将in从服务端得到的信息保存到b中,"msg"->"//伪代码:服务器发来信息"
                   b.putString("msg", in.readLine());
                   //用m消息对象接收b的信息
                   m.setData(b);
                   //将信息交给handler处理,转到ui线程上
                   handler.sendMessage(m);
                   //关闭socke
                   cln.close();

               }catch(Exception e){

                            / /各类消息错误 

                   Message m = Message.obtain();
                   Bundle b = new Bundle();
                   b.putString("msg", e.getMessage());
                   m.setData(b);
                   handler.sendMessage(m);
               }
               return null;
           }
       }.execute();//异步执行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值