【发布时间】:2011-03-31 08:46:00
【问题描述】:
我在 Android 中通过蓝牙使用 RFCOMM 套接字时遇到了数据完整性问题。我没有任何连接问题,但我收到的数据是乱码,与发送的数据不同。数据由 RS232 设备通过手机连接的蓝牙适配器发送。适配器没有问题,因为如果我用笔记本电脑连接,数据可以正确接收。
我的蓝牙连接是根据 Android 开发者网站 (http://developer.android.com/resources/samples/BluetoothChat/index.html) 上的 BluetoothChat 示例应用程序处理的,没有任何更改。发送的数据是纯文本和控制字符(在显示给用户之前被剥离)。我遇到的具体问题是一些文本丢失,一些重复等等。 有趣的是,如果我使用终端应用程序连接到计算机并在其中输入,则数据传输良好。此外,如果我使用GetBlue 应用程序连接到设备,则可以正常接收数据。
所以我想问题是 GetBlue 在处理其蓝牙数据传输方面可能有什么不同,还是有另一种方法通过 Android 上的 RFCOMM 套接字接收蓝牙数据?
【问题讨论】:
-
我认为部分问题与线程有关,因为在流中读取的函数位于单独的线程上。此外,数据正在快速发送。