Luc*_*Luc 9 bluetooth-lowenergy web-bluetooth
我的项目基于发现服务和特征示例项目: https://googlechrome.github.io/samples/web-bluetooth/discover-services-and-characteristics.html
我正在尝试将设备内所有可用服务的列表记录到 Chrome 控制台中。有可能这样做吗?因为如果我不输入服务 ID,就会遇到安全错误:“Argh!SecurityError:不允许 Origin 访问任何服务。提示:将服务 UUID 添加到 requestDevice() 选项中的‘可选服务’。”
我知道 NRF Connect 可以检测所有服务。
那么我可以在不预先定义服务的情况下从设备检索所有服务的列表吗?
任何想法,将不胜感激。
Vin*_*eib 12
简短的回答:不,您必须列出您想要访问的服务。
Web 蓝牙在设计时考虑到了用户隐私,并要求应用程序想要访问的服务列在requestDevice调用中,以便浏览器可以向用户提供适当数量的通信。有一种方法可以请求连接到任何设备acceptAllDevices: true,但没有一种方法可以请求访问设备上的所有服务。
当您进行开发并需要了解 Chrome 可以在您可以使用的设备上看到什么时chrome://bluetooth-internals/#devices。开始扫描以查找设备,然后选择“检查”。(只有某些设备会接受连接。)
NRF Connect也是一个优秀且更强大的工具。
当前的网络蓝牙设计不支持构建该级别的诊断应用程序。有关 Web 蓝牙安全和隐私模型的更多信息,请参见Web 蓝牙规范。
关于这些主题的一篇面向开发人员的优秀文章:https://developers.google.com/web/updates/2015/07/interact-with-ble-devices-on-the-web
| 归档时间: |
|
| 查看次数: |
3258 次 |
| 最近记录: |