首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Web蓝牙:如何检查是否使用javascript启用了蓝牙?

Web蓝牙:如何检查是否使用javascript启用了蓝牙?
EN

Stack Overflow用户
提问于 2020-05-19 11:33:24
回答 2查看 1.2K关注 0票数 1

是否可以检查是否使用javascript启用了蓝牙,是否有任何事件可以检测其更改?

网络蓝牙API中有getAvailability()方法:

getAvailability()返回一个承诺,如果用户代理在具有蓝牙无线电的系统上运行,否则将为false解析。蓝牙无线电的供电状态不影响可用性,因为应用程序可以提示用户使用requestDevice()打开收音机。可用性更改事件可用于检测蓝牙无线电可用性的变化。 这个API对于开发人员了解是否应该向用户显示Web蓝牙的UI非常有用。

Web蓝牙/可用性示例

但是正如所描述的,蓝牙无线电的电源状态不会影响可用性,它不会对计算机设置下的蓝牙关闭做出反应。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-19 16:32:14

正确,getAvailability()只告诉您系统是否有蓝牙收音机。

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

票数 3
EN

Stack Overflow用户

发布于 2022-07-20 15:40:56

您可以使用以下代码来检查蓝牙的可用性。然而,只有Chrome浏览器有蓝牙对象。

代码语言:javascript
复制
navigator.bluetooth.getAvailability().then(available => {
        if (available)
            console.log("This device supports Bluetooth!");
        else
            console.log("Doh! Bluetooth is not supported");
      });

参考资料:https://developer.mozilla.org/en-US/docs/Web/API/Bluetooth/getAvailability

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61890029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档