我正在尝试使用蓝牙示例,该示例应使用'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设备进行测试
答案 0 :(得分:0)
与某些制造商一样,HTC的蓝牙堆栈实现略有不同,这可能是SDP无法正常工作的原因。