蓝牙SDP在某些设备中失败

时间:2013-04-19 12:06:06

标签: java android bluetooth bluetooth-lowenergy

我正在尝试使用蓝牙示例,该示例应使用'rtspp'协议将Android客户端应用程序连接到在PC上运行的蓝牙服务器应用程序(Java应用程序,使用Bluecove库)。

作为开发的第一阶段,我实施了一个运行模型,该示例应用程序可以在所有经过测试的三星设备中平稳运行,但不能与HTC设备一起运行。

尝试使用HTC设备时,显示SDP在连接时出现IO异常错误。

这是我的服务器应用程序代码,它作为java桌面应用程序运行;

String url = "btspp://localhost:" + uuid.toString() + ";name=MyAppSDPName";
StreamConnectionNotifier notifier = (StreamConnectionNotifier)Connector.open(url);
StreamConnection connection = notifier.acceptAndOpen();
...

此服务器应用程序正在成功运行并等待传入​​连接...

这是我的客户端代码,它作为Android应用程序运行;

BluetoothDevice mmDevice = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(deviceAddress);
BluetoothSocket mmSocket = mmDevice.createRfcommSocketToServiceRecord(uuid);
mmSocket.connect();

在三星设备上运行此应用程序时没有问题.. 但是当它来自hts设备时,它会抛出IOException,表明SDP failed

任何人都可以通过HTC设备了解这个问题吗? 使用Android 2.2和4.0操作系统的HTC设备进行测试

1 个答案:

答案 0 :(得分:0)

与某些制造商一样,HTC的蓝牙堆栈实现略有不同,这可能是SDP无法正常工作的原因。