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