我正在使用Web 蓝牙 API,我正在尝试从浏览器获取我的设备(小米 MyBand、BLE 设备)的当前电池电量。
我是蓝牙 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)
})
错误:NotFoundError:在设备中找不到与 UUID 0000180f-0000-1000-8000-00805f9b34fb 匹配的服务。
我被困住了。知道我需要做什么吗?
完整的示例代码在这里:https ://github.com/baumannzone/browser-apis/blob/master/src/views/Bluetooth/Example1.vue
现场演示:https ://browser-apis.netlify.com/#/bluetooth
谢谢大家。