Java 蓝牙HID服务器永远接受阻塞

Java 蓝牙HID服务器永远接受阻塞,java,android,bluetooth,android-bluetooth,Java,Android,Bluetooth,Android Bluetooth,我正在为一个小型且非常简单的蓝牙遥控器编写一个蓝牙HID服务器。我在看文件 我的申请许可包括: <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> MyBluetoothServerSocket是这样构造的套接字: MyBluetoothAdapter.list

我正在为一个小型且非常简单的蓝牙遥控器编写一个蓝牙HID服务器。我在看文件

我的申请许可包括:

<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
MyBluetoothServerSocket
是这样构造的套接字:

MyBluetoothAdapter.listenUsingRfcommWithServiceRecord("MyService", UUID.fromString("00001124-0000-1000-8000-00805f9b34fb"));
我在上面使用的UUID是我的远程控制设备通过以下方法报告的唯一UUID:

MyBluetoothDevice.getUuids();
MyBluetoothAdapter
只是默认适配器:

BluetoothAdapter.getDefaultAdapter();
剩下的代码是最小的(确保蓝牙开启,选择正确的设备)和正常工作。遥控器与手机相连

上面代码中标记为有问题的行(
accept()
)永远不会返回,即永远阻塞。我做错了什么


编辑:我尝试了
MyBluetoothAdapter。ListenusingSecureRFCommwithServiceRecord
,但没有成功。

HID基于L2CAP蓝牙配置文件(协议?),该配置文件(第107行)于2013年10月在Android中使用

这使得目前无法连接到HID设备

BluetoothAdapter.getDefaultAdapter();