【问题标题】:How to read strings from a bluetooth socket in java如何从java中的蓝牙套接字读取字符串
【发布时间】:2012-12-17 13:15:08
【问题描述】:

我正在尝试将蓝牙 SPP 服务器中的字符串读入我的 Android 客户端。服务器工作正常,并将字符串发送到客户端,如 Logcat 中所示。LogCat 表示从 btSocket 读取字节。但是,我尝试从套接字读取并显示到 TextView 的字符串是徒劳的。 Here 是 Android 客户端,这里是 logcat 以证明服务器工作正常。一些 Android 和 Java 大师可以提供帮助。谢谢。

【问题讨论】:

标签: java android io bluetooth


【解决方案1】:

试试这样的:

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

希望对你有所帮助。

谢谢。

【讨论】:

  • 谢谢夏尔马,这真的很有帮助。有人还建议我应该将蓝牙代码作为服务而不是 Activity,您对此有何看法?
  • @nmvictor 是的,这可能是个好方法。您可以使用服务进行通信,并且您可以在服务中拥有处理程序,这些处理程序将从服务器接收数据并将数据发送到您的客户端活动。
  • 我看到上面的代码最多可以工作 1024 个字节。你怎么知道字节都收到了?
猜你喜欢
  • 2011-05-13
  • 1970-01-01
  • 1970-01-01
  • 2012-10-22
  • 1970-01-01
  • 2017-10-05
  • 2020-11-01
  • 2022-01-20
  • 1970-01-01
相关资源
最近更新 更多