LV. 18
GP 80

【問題】Server Socket讀取不到client Socket送出的訊息

樓主 王乙己 ghj879258
GP0 BP-
專案內容:
在手機a上模擬遊戲搖桿操作角色,遊戲畫面顯示在手機b上

架構:
      客戶端[Anroid手機上的java程式]
           把android手機,當作虛擬搖桿,發送控制訊息(移動方向)給伺服器

     伺服器[PC上的java程式]
          紀錄玩家當前位置,在接收客戶端的控制訊息後,
          會算出玩家的新位置,並把玩家的新位置傳送給顯示器(另一台手機)

    顯示器[另一台Anroid手機上的java程式]
           接受伺服器傳來的新位置,把玩家繪製在新的位置


問題:
現在的問題發生在伺服器收不到客戶端的訊息

客戶端用socket output stream把訊息送到server
server用socket input stream讀取client送出的訊息
但是讀取不到(server intput stream的ready()總是回傳false)


自己的嘗試:
1.client有連上server

2..檢查過client socket的output stream送出的內容真的有東西
也且花費的網路流量也越來越多,所以應該也有送出去

3.檢查過server socket在讀取訊息前沒有斷訊
isClose()  && isConnected()  為true

但是就是server就是接收不到client送出的東西
花了一段時間但是真的找不到問題,所以來這裡請教各位

Code:
Server:
Client:




0
-
未登入的勇者,要加入 2 樓的討論嗎?
板務人員:歡迎申請板主

精華區有 10 筆文章
目前無人維護,申請組長


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】