2013-01-03 95 views
1

我正嘗試從藍牙SPP服務器讀取字符串到我的Android客戶端。服務器工作正常,並將這些字符串發送到客戶端,如Logcat中所證明的那樣.LogCat指示從btSocket讀入字節。然而,我試圖從套接字讀取並顯示字符串到TextView是徒勞的。 Here是Android客戶端,這裏是logcat來證明服務器正常工作。一些Android的專家&友善地協助。謝謝。如何從java中的藍牙套接字讀取字符串

回答

3

嘗試這樣:

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); 

希望它可以幫助你。

謝謝。

+0

謝謝Sharma,這真的有幫助。有人還建議我應該將藍牙代碼作爲一項服務而不是一項活動,你會怎麼做? – nmvictor

+0

@ nmvictor是的,這可能是好方法。您可以使用服務進行通信,並且您可以在服務中擁有處理程序,它將從服務器接收數據並將數據發送到客戶端活動。 –

+0

我看到上面的代碼適用於多達1024個字節。你怎麼知道字節全部被接收到的時間? – KVISH