Android 台灣中文網
標題:
如何像 TCP Client 那樣顯示接收的訊息?
[打印本頁]
作者:
perfect9527
時間:
2016-1-12 17:00
標題:
如何像 TCP Client 那樣顯示接收的訊息?
我用 8051 接了一顆 wifi 模組
然後寫了一個簡單的 APP 透過 TCP/IP 連線
目前連線以及 APP 傳 訊息到 8051 都 OK 沒問題
8051 回傳的部分用 TCP Client 這個 APP 可以一直收到並顯示出 8051 傳給我的電壓值
我用 BufferedReader 寫結果沒辦法顯示出收到的電壓值
我的 wifi 模組連上線後會自動送一個 *HELLO* 也沒有顯示出來
// 接收來自Server的訊息
BufferedReader br=new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
// 顯示收到的訊息
String newInput = br.readLine();
MyArrayAdapter.add(newInput);
MyArrayAdapter.notifyDataSetChanged();
但是我把 wifi 模組接電腦用終端機開啟
APP 開啟後電腦終端機有顯示已連線
但 APP 還是沒有顯示 *HELLO*
結果我用終端機 send 一個 1 出去我的APP就顯示 *HELLO*1
是不是 BufferedReader 需要有結束的碼他才會視為一個完整的訊息然後讓我顯示出來
如果是這樣的話
請問 TCP Client 這種 APP 他是用什麼指令可以持續把收到的訊息顯示出來呢?
或是我 8051 那邊也有辦法在每個訊息後傳一個結束碼呢?
作者:
cmdunlop
時間:
2016-1-18 23:28
看個敘述感覺上你的8051還未完成
1.
APP 開啟後電腦終端機有顯示已連線
但 APP 還是沒有顯示 *HELLO*
你的8051已經接收該APP連線但是你有針對這個連線在回送給APP?看起來沒有
2.
結果我用終端機 send 一個 1 出去我的APP就顯示 *HELLO*1
你的8051確實是送1的數值嗎?,還是傳送*HELLO*1
這根結束碼無關,而是該8051的*HELLO*還是存在所以會產生*HELLO*1
這個傳送邏輯應該要看
3.
這應該是關於8051的程式碼,就目前你所用的APP暫時是沒有錯誤
作者:
sfzvzfbv
時間:
2016-1-22 17:40
把 InputStreamReader 改成用 ByteArrayOutputStream() 試試看
歡迎光臨 Android 台灣中文網 (https://apk.tw/)
Powered by Discuz! X3.1