Bluetooth 网络蓝牙:为什么大多数设备;未知或不受支持;?

Bluetooth 网络蓝牙:为什么大多数设备;未知或不受支持;?,bluetooth,bluetooth-gatt,web-bluetooth,Bluetooth,Bluetooth Gatt,Web Bluetooth,我正在使用Web Bluetooth连接到设备并读取名称和电池电量。 我让它工作,但我想连接的设备是“未知或不受支持”,但我不知道为什么。在requestDevice()上,我只得到我的Iphone和许多未知设备 当我在chrome://bluetooth-internals我看到了一些已知的设备,但不是我正在寻找的设备。我必须根据最新的RSSI猜测正确的设备。这不是用户友好的 有办法解决这个问题吗?或者有人能解释为什么几乎所有的设备都是未知的或不受支持的 我用的是Mac电脑。(在这种情况下)

我正在使用Web Bluetooth连接到设备并读取名称和电池电量。 我让它工作,但我想连接的设备是“未知或不受支持”,但我不知道为什么。在requestDevice()上,我只得到我的Iphone和许多未知设备

当我在
chrome://bluetooth-internals
我看到了一些已知的设备,但不是我正在寻找的设备。我必须根据最新的RSSI猜测正确的设备。这不是用户友好的

有办法解决这个问题吗?或者有人能解释为什么几乎所有的设备都是未知的或不受支持的

我用的是Mac电脑。(在这种情况下)

更新@François Beaufort
nRF Connect应用程序的屏幕截图。在应用程序中,设备有一个名称。我刚刚看到该设备在
bluetooth internals
中也有一个名称,但它似乎并不总是宣传它的名称


上面写着
设备类型:Google
,但它不是Google提供的设备。

您在蓝牙浏览器选择器中看到的名称是人类可读的蓝牙设备名称。蓝牙设备可能有两种不同的名称类型:一种是蓝牙设备发布的,另一种是蓝牙设备在其数据库中发布的,作为其蓝牙低能通用访问配置文件(GAP)设备名称。如果蓝牙设备同时具有两种类型的名称,您将获得GAP设备名称

如果您看到
“未知或不受支持的设备(12:34:56:78:9A:BC)”
,则表示蓝牙设备没有公布其名称。为了降低bluetooth chooser中的噪音,如果您注意到您的bluetooth设备在播发一些内容,我建议您使用其他过滤器,如
“服务”
。请参阅上的完整开发人员文档

navigator.bluetooth.requestDevice({filters:[{services:['battery\u service']}]})
。然后(设备=>{/*…*/})
.catch(错误=>{console.error(错误);});

更新:您可以在
chrome://bluetooth-internals/#devices
在Chrome 93的“服务”栏中。请参阅

如果您使用通用的蓝牙低能扫描和探测工具,如设备是否显示?你没有说你要找的设备是什么。是它的本地名吗?这是一个BLE设备吗?@ukBaz它不会出现在nRF Connect上。我想用耳机连接耳塞。我如何检查它是否在宣传其本地名称?我不认为这有什么好处。谢谢!但是
chrome://bluetooth-internals/#devices
对于列表中的所有设备,页面为空。它适用于所有未知的
。这是否意味着该设备不宣传任何服务?当我连接设备时,它有5项可用服务。是。这意味着你附近的蓝牙设备不会为服务做广告。你能分享一个扫描你感兴趣的蓝牙设备的NRFConnect应用程序的屏幕截图吗?我想知道是否有其他过滤器可以用来获取它。请参阅,我用屏幕截图更新了问题。似乎此设备的服务UUID已发布
0xFE61
navigator.bluetooth.requestDevice({filters:[{services:[0xFE61]}]})
是否适合您?如果没有,您可能希望将制造商数据筛选器(在Chrome92-中提供)与类似
navigator.bluetooth.requestDevice({filters:[{manufacturerData:[{companyIdentifier:0x01DA}]}]})的内容一起使用。
。请参见“服务工程”上的过滤器!谢谢