在Microsoft网站上下载蓝牙通信演示, 搜索到蓝牙设备可以成功,但连接设备故障。 (图1和图2)
在图1中,蓝牙设备已搜索出来,然后我跳过第2步,直接跳到第3步,后面将失败。(图2)
然后我找到了BluetoothLEDevice的方法。 FromIdAsync始终返回null。 此外,Microsoft的API文档官方网站没有说明返回值为空的原因。(图3)
在这种情况下地址:
https://github.com/Microsoft/Windows-universal-samples
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
温馨提示:(调试环境的情况)
系统:win10 10.0.14393
IDE:vs2015
蓝牙设备:接口4.0(德州仪器)
系统设置:适用于开发人员的win10设置调整模型
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
我总结了可能的原因:
①蓝牙没有与PC配对,所以设备找不到蓝牙服务,我打开设备管理器,发现设备没有找到服务(图4),但在做安卓蓝牙开发之前没有配对。(图4)
②微软蓝牙通信API有一个Bug
在互联网上搜索三个类似的帖子:
发布1:BluetoothLEDevice.FromIdAsync returning null
(因为声誉不够,所以只有一个链接)
补充:
在这种情况下,我跳过直接负责设备连接的第2步,因为我不知道PIN。然后我想找一个PIN bycrack, 但是这一步骤封装在Microsoft的API中,不能作为辅助操作。
蓝牙4.0大部分是自动匹配功能,因此Android手机可以直接连接,不需要配对。 所以我猜微软不是这种方法不支持自动匹配功能。(最后,由于我的照片声望无法上传。)
答案 0 :(得分:0)
以official explanation为基础,你
必须通过“设置”页面或使用Windows.Devices.Enumeration API进行配对,才能访问这些设备。
在这种情况下,我跳过第2对直接负责 设备连接,因为我不知道PIN。然后我想找到 PIN bycrack
你试过" 0000"对于PIN?
<强>更新强>: 或者,您可以尝试使用DeviceInformation.Pairing.Custom并将其对类型设置为ConfirmOnly并且不加密。 注意,this will only work if the remote device does not require encryption or authentication to function。您可以参考官方样本DeviceEnumerationAndPairing的Scenario9_CustomPairDevice。它看起来像这样: