无法与BluetoothHidDevice配置文件建立与Windows 10 PC的连接

时间:2019-08-14 10:57:52

标签: android bluetooth android-bluetooth hid

我正在尝试编写一个通过蓝牙连接到另一台设备,通过新的BluetoothHidDevice将自己标识为键盘的应用程序,然后将文本和/或单个字符作为键盘输入发送到目标设备。 / p>

到目前为止,除了建立从华为P10到Windows 10笔记本电脑的蓝牙连接之外,我一切正常。当我在接收端用Galaxy S8 +测试另一台Android设备时,它似乎工作正常,当我尝试建立连接时,P10被正确检测为物理键盘,并且可以将键盘输入发送到S8 + < / p>

我还尝试了两台不同的笔记本电脑,一台带有内置蓝牙适配器,另一台带有外部USB适配器,在两种情况下都无法建立连接。

我的代码主要基于Google的https://github.com/ginkage/wearmouse,我在寻找自己问题的解决方案时发现了另一个question

问题是调用BluetoothHidDevice#connect后没有建立连接,该连接按预期返回true,但似乎只是超时。

观察日志时,我只看到状态在1(连接)和0(断开)之间切换:

D/BluetoothHidDevCallback: onConnectionStateChanged: device=[redacted MAC] state=1
D/BluetoothHidDevCallback: onConnectionStateChanged: device=[redacted MAC] state=0
...

我设置了一个android studio项目,您只需要在TARGET_DEVICE_NAME内将MainActivity.java更改为目标设备名称,它就应该立即可用(需要Android 9 Pie):{{ 3}}

您的设备需要预先配对,因为它将检查您配对的设备中的TARGET_DEVICE_NAME并在您按下按钮时尝试连接到它。如果连接成功,则按钮会将字符串"TestMessage"发送到目标设备。

如果您自己运行应用程序并在Logcat中跟踪BluetoothHidDevCallback,则应该看到它尝试连接(状态= 1),断开连接(状态= 0)并重复。它应该更改为状态2,它表示已连接,这是我希望像尝试P10-> S8 +连接时所做的那样。

如果您没有Windows PC,请随时尝试连接到macOS设备,因为我想知道这是否仅是Windows问题。

0 个答案:

没有答案