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燈, 水草

請輸入看板名稱,例如:BuyTogether站內搜尋

TOP