Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Web Bluetooth API错误:没有与UUID匹配的服务_Javascript_Browser_Bluetooth_Bluetooth Gatt_Web Bluetooth - Fatal编程技术网

Javascript Web Bluetooth API错误:没有与UUID匹配的服务

Javascript Web Bluetooth API错误:没有与UUID匹配的服务,javascript,browser,bluetooth,bluetooth-gatt,web-bluetooth,Javascript,Browser,Bluetooth,Bluetooth Gatt,Web Bluetooth,我正在玩,我正在尝试从浏览器获取我的设备(小米MyBand,BLE设备)的当前电池电量。 我对bluetooth web api有点陌生,请记住,我可能缺少一些基本的东西 我的设置: Chrome版本76.0.3809.132(64位) macOS Mojave v10.14 这是我的Javascript代码,单击按钮时调用此函数: navigator.bluetooth .requestDevice({filters: [ { name: 'MI' },

我正在玩,我正在尝试从浏览器获取我的设备(小米MyBand,BLE设备)的当前电池电量。
我对bluetooth web api有点陌生,请记住,我可能缺少一些基本的东西

我的设置:

  • Chrome版本76.0.3809.132(64位)
  • macOS Mojave v10.14
这是我的Javascript代码,单击按钮时调用此函数:

  navigator.bluetooth
    .requestDevice({filters: [
        { name: 'MI' }, 
        { services: ['battery_service'] }
    ]})
    .then(device => {
      console.log(1)
      return device.gatt.connect()
    })
    .then(server => {
      console.log(2)
      return server.getPrimaryService('battery_service')
    })
    .then(service => {
      console.log(3)
      return service.getCharacteristic('battery_level')
    })
    .then(characteristic => {
      console.log(4)
      return characteristic.readValue()
    })
    .then(value => {
      console.log(5)
      console.log(value.getUint8(0))
    })
    .catch(error => { 
       console.log('error: ', error) 
    })
我记录了2号日志,然后出现以下错误:

错误:NotFoundError:在设备中找不到与UUID 0000180f-0000-1000-8000-00805f9b34fb匹配的服务

我卡住了。你知道我需要做什么吗

完整示例代码如下所示:

现场演示


谢谢大家。

那里有服务吗?用工具确认,如chrome://bluetooth-internals 或nRF连接。此外,请尝试此通用电池电量读数示例,该示例已知可用于其他设备:嘿,谢谢您的回复。是的,它列在chrome BT内部,请参阅:。我只是想得到一些设备信息,我不需要特别的电池。我只是想证明我可以从浏览器中读取设备的某些信息(不仅仅是名称),我看不到服务…180f。。。在屏幕截图中。您已经扩展了服务…感觉0。。。(注册分配编号,可在中找到)。同样,该设备可能没有公开该服务(即使它做广告)。尝试阅读它确实公开的其他服务/特性。搜索可以找到一些有用的信息。