AndroidDev 板


LINE

※ [本文转录自 java 看板 #1HOu9-R6 ] 作者: AtkinsV3 (反吱野心家) 看板: java 标题: [问题] socket请教问题 时间: Tue Apr 9 10:52:44 2013 @Override protected void onStart(){ super.onStart(); Thread thread1=new Thread(new socketServer()); thread1.start(); Thread thread2=new Thread(new socketClient()); thread2.start(); } //结束前关闭连线 @Override protected void onStop(){ closeSocket(); super.onStop(); } //手机端愈接收和处理讯息 private class socketServer implements Runnable{ @Override public void run() { // TODO Auto-generated method stub try { if(sServer==null){ sServer=new ServerSocket(port); // sServer=new ServerSocket(); sServer.setReuseAddress(true); // sServer.bind(new InetSocketAddress(port)); } if(!sServer.isClosed()){ Log.i("isConnect", "Socket Server is Running: "+port); handler.post(runable); } while(!sServer.isClosed()){ Log.i("test", "socketcheck"); socket1=sServer.accept(); if(!socket1.isClosed()){ Log.i("isConnect", "Socket1 Server is Running: "+port); handler.post(runable); } Thread thread=new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub try { BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(socket1.getInputStream())); // DataInputStream dataInputStream=new DataInputStream(socket1.getInputStream()); while(socket1.isConnected()){ BufferedWriter bufferedWriter=new BufferedWriter(new OutputStreamWriter(socket1.getOutputStream())); String msg=bufferedReader.readLine(); Log.i("get", msg); // Log.i("get", "msg"+dataInputStream.readLine()); bufferedWriter.write(msg+"\n"); bufferedWriter.flush(); // Toast.makeText(baseActivity.this, msg, Toast.LENGTH_LONG).show(); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); Log.i("error", "msgerror"); } } }); thread.start(); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); Log.i("error", "openthreaderror"); // finish(); } } } //伺服器端 public class socketClient implements Runnable{ @Override public void run() { // TODO Auto-generated method stub try { socket2=new Socket(ip, port); if(socket2.isConnected()){ Log.i("client", "success:"+ip+":"+port); // sendMessage("$START,0030003100380037*46/"); // handler.post(runable); } // Log.i("get", "test"); BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(socket2.getInputStream())); // Log.i("get", "test"); // DataInputStream dataInputStream=new DataInputStream(socket2.getInputStream()); while(socket2.isConnected()){ // Log.i("msg", bufferedReader.readLine()); // Log.i("get", "test"); String msg=bufferedReader.readLine(); // if(msg!=null){ // Log.i("get", "testend"); // Log.i("msg", "check"); // Log.i("msg", "msg"+dataInputStream.readLine()); // } if(bufferedReader.readLine()!=null){ Log.i("msg", "check"); Log.i("msg", msg); handler.post(runable); } } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); Log.i("error", "clienterror"); } } } //关闭连线的地方 private void closeSocket(){ try { if(sServer!=null&&!sServer.isClosed()){ sServer.close(); } if(socket1!=null&&!socket1.isClosed()){ socket1.close(); } if(socket2!=null&&!socket2.isClosed()){ socket2.close(); } } catch (Exception e) { // TODO Auto-generated catch block Log.i("socket close", "failed"); e.printStackTrace(); } } private Runnable runable=new Runnable() { @Override public void run() { // TODO Auto-generated method stub } };; //送出资料讯息 public static void sendMessage(String msg){ if (socket2!=null&&socket2.isConnected()){ BufferedWriter bufferedWriter; try { bufferedWriter=new BufferedWriter(new OutputStreamWriter(socket2.getOutputStream())); bufferedWriter.write(msg); bufferedWriter.flush(); } catch (Exception e) { // TODO Auto-generated catch block Log.i("error", "msg send failed"); e.printStackTrace(); } }else{ Log.i("error", "not connect"); } } 我可以确保程式可以送出讯息给机器 但偏偏就接不到机器返回的值 希望可以有人来讨教 这是我工作业务我不想饭碗不保拜托 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.134.16.201



※ 发信站: 批踢踢实业坊(ptt.cc)
※ 转录者: AtkinsV3 (220.134.16.201), 时间: 04/09/2013 10:53:45
1F:→ tkucuh:对方确定有收到? 04/09 11:05







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP