3

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

作为开发的第一阶段,我实现了一个运行模型,并且该示例应用程序可以在所有经过测试的三星设备上顺利运行,但不能在 HTC 设备上运行。

在尝试使用 HTC 设备时,它在连接时显示 SDP failed IO Exception。

这是我的服务器应用程序代码,它作为 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 设备进行测试

4

1 回答 1

0

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

于 2013-04-26T09:46:57.310 回答