在JAVA中使用L2CAP连接HID设备有什么解决办法(使用JSR-82规范实现,本机是移动设备,而不是BlueCove等等)?
我知道HID设备通常使用0x0011值的PSMs (协议服务复用器)。不幸的是,我发现:
合法的PSM值在范围内(0x1001..0xFFFF),最小的字节必须是奇数,所有其他字节必须是偶数。
上面解释了为什么当我尝试下面的代码时javax.microedition.io.Connector connect()方法会抛出异常:
Connector.open("btl2cap://600010120296:11");发布于 2014-01-05 04:02:23
此页建议在JSR-82-1.2中取消这一限制:
合法的PSM值在范围内(0x0005..0xFFFF),最小的字节必须是奇数,所有其他字节必须是偶数。当服务器连接字符串没有psm参数时,由实现分配的服务器PSM值必须不少于0x1001。
还有评论:
从Java值中删除保留范围,允许L2CAP应用程序使用在L2CAP基础上使用“保留”范围内的PSM值构建的蓝牙协议。
此外,“中断端点”是PSM0x13(键盘、鼠标等将在其中发送未经请求的报告,就像它们在控制通道(0x11)上发送响应GET_REPORT一样)。
https://stackoverflow.com/questions/12027310
复制相似问题