Android 2.1& HTC Desire:有蓝牙问题吗? (CorruptedStreamException)

时间:2010-07-28 13:02:37

标签: java android exception bluetooth

我制作了一个使用Android SDK 2.1的应用程序。此应用程序使用蓝牙连接到多个设备。

我有3台HTC Dreams(谷歌G1)作为测试设备。应用程序运行正常。它们已植根,Android 2.1正在运行它们。

如果我加入我的HTC Desire(Android 2.1 Update 1),如果有超过1个蓝牙连接打开,则从蓝牙套接字读取的流始终关闭。抛出的异常是IOException和CorruptedStreamException。

类似的问题是,有时我无法将我的HTC Desire连接到其他设备,而其他方式的连接工作得非常好。

HTC Desire与蓝牙和Android 2.1 Update1结合使用是否存在任何已知问题?

2 个答案:

答案 0 :(得分:2)

HTC Desire中的蓝牙SPP配置文件已损坏,并且有一个错误的实施。

http://code.google.com/p/android/issues/detail?id=8382

干杯, 马杜

答案 1 :(得分:0)

在我的应用中寻找类似问题的解决方案时,我找到了这个博客。

http://mobisocial.stanford.edu/news/2011/03/bluetooth-reflection-and-legacy-nfc/

它将帮助所有仍在寻找此问题解决方案的人

解决方案现在变得非常简单。只需在项目中包含InsecureBluetooth.java,然后在BluetoothChatService.java中更改2行。

tmp = InsecureBluetooth.listenUsingRfcommWithServiceRecord(mAdapter, NAME, MY_UUID, true);

tmp   = InsecureBluetooth.createRfcommSocketToServiceRecord(device, MY_UUID, true);

多数民众赞成!