0

是否可以检查是否使用 javascript 启用了蓝牙,是否有任何事件可以检测到它的变化?

getAvailability()Web蓝牙API中有方法:

getAvailability() 返回一个promise,如果用户代理在具有蓝牙无线电的系统上运行,则返回true,否则返回false。蓝牙无线电的通电状态不会影响可用性,因为应用程序可以提示用户使用 requestDevice() 打开无线电。availabilitychanged 事件可用于检测蓝牙无线电可用性的变化。

此 API 有助于开发人员了解他们是否应该向用户显示 Web 蓝牙的 UI。

网络蓝牙/可用性示例

但如上所述,蓝牙无线电的通电状态不会影响可用性,它不会对从计算机设置中关闭蓝牙做出反应。

4

1 回答 1

2

正确,getAvailability()仅告诉您系统是否具有蓝牙无线电。

没有特定的 API 可以告诉站点收音机是打开还是关闭。如果requestDevice()被调用并且用户关闭了无线电,他们将在 Chrome 的设备选择器中收到通知。他们可以选择取消提示或打开蓝牙设置以启用它。无论哪种方式,requestDevice()都会拒绝并出现错误,直到用户在设置中启用蓝牙。

于 2020-05-19T16:32:14.187 回答