KitKat中的Android BT堆栈

KitKat中的Android BT堆栈,android,bluetooth,android-4.4-kitkat,bluez,l2cap,Android,Bluetooth,Android 4.4 Kitkat,Bluez,L2cap,我想知道是否还有其他人在其他设备上遇到L2CAP连接问题。我有一个在安卓4.1下运行良好的设备,但现在我在KitKat上,它不再工作了。我可以在具有特定服务名称属性的BT套接字上进行监听,以使手机可被设备发现,但这不再有效 我的想法是,它是Bluedroid的添加和Bluez堆栈的删除。BLE工作得很好,但我已经失去了经典的BT功能。我已经用BT调试方法重建了操作系统映像,我可以看到一个奇怪的情况,它似乎试图通过BLE连接L2CAP,即使设备不支持BLE。基本上,有很多ATT和GATT的电话,我

我想知道是否还有其他人在其他设备上遇到L2CAP连接问题。我有一个在安卓4.1下运行良好的设备,但现在我在KitKat上,它不再工作了。我可以在具有特定服务名称属性的BT套接字上进行监听,以使手机可被设备发现,但这不再有效

我的想法是,它是Bluedroid的添加和Bluez堆栈的删除。BLE工作得很好,但我已经失去了经典的BT功能。我已经用BT调试方法重建了操作系统映像,我可以看到一个奇怪的情况,它似乎试图通过BLE连接L2CAP,即使设备不支持BLE。基本上,有很多ATT和GATT的电话,我认为经典的BT设备不应该出现。我还尝试删除BLE功能并重建堆栈,但这并没有解决问题,这似乎表明L2CAP over BT根本不受支持(基本上,它有相同的问题,即不连接,但没有GATT/ATT调用)。关于经典BT的Bluedroid中是否存在L2CAP功能有什么想法?有没有办法替换堆栈或使用更新版本的Bluez(支持BLE)?非常感谢您的任何帮助或想法


谢谢

不幸的是,
L2CAP
不支持4.2版以后的版本,Android网站上有一个公开问题,有更多详细信息

关于何时修复,似乎没有回应。我们使用的是Wii remote,还有一个项目也停止了工作

当我检查4.4的源代码时,它确实有一个常量
TYPE_L2CAP
,请参见以下内容:

/*package*/ static final int TYPE_RFCOMM = 1;
/*package*/ static final int TYPE_SCO = 2;
/*package*/ static final int TYPE_L2CAP = 3;
但是,如果你看它,它只提到
RFCOMM

干杯

试试这个,分享你的观点