1
我正嘗試從藍牙SPP服務器讀取字符串到我的Android客戶端。服務器工作正常,並將這些字符串發送到客戶端,如Logcat中所證明的那樣.LogCat指示從btSocket讀入字節。然而,我試圖從套接字讀取並顯示字符串到TextView是徒勞的。 Here是Android客戶端,這裏是logcat來證明服務器正常工作。一些Android的專家&友善地協助。謝謝。如何從java中的藍牙套接字讀取字符串
我正嘗試從藍牙SPP服務器讀取字符串到我的Android客戶端。服務器工作正常,並將這些字符串發送到客戶端,如Logcat中所證明的那樣.LogCat指示從btSocket讀入字節。然而,我試圖從套接字讀取並顯示字符串到TextView是徒勞的。 Here是Android客戶端,這裏是logcat來證明服務器正常工作。一些Android的專家&友善地協助。謝謝。如何從java中的藍牙套接字讀取字符串
嘗試這樣:
byte[] buffer = new byte[1024];
int bytes;
inFromServer = nmeaServerSocket.getInputStream();
bytes = inFromServer.read(buffer);
String readMessage = new String(buffer, 0, bytes);
Log.d(TAG, "Message :: "+readMessage);
希望它可以幫助你。
謝謝。
謝謝Sharma,這真的有幫助。有人還建議我應該將藍牙代碼作爲一項服務而不是一項活動,你會怎麼做? – nmvictor
@ nmvictor是的,這可能是好方法。您可以使用服務進行通信,並且您可以在服務中擁有處理程序,它將從服務器接收數據並將數據發送到客戶端活動。 –
我看到上面的代碼適用於多達1024個字節。你怎麼知道字節全部被接收到的時間? – KVISH