BLE Peripheral Simulator app与Web Bluetooth Samples结合在一起,对于开发人员来说是巨大的资源。
设备配对后,是否可以通过Web蓝牙绕过配对屏幕并直接转到应用程序?
答案 0 :(得分:0)
是的,这是可能的。 Code Source。不过不是我的代码。
// Selected device object cache
let deviceCache = null;
// Launch Bluetooth device chooser and connect to the selected
function connect() {
return (deviceCache ? Promise.resolve(deviceCache) :
requestBluetoothDevice())
.then(device => connectDeviceAndCacheCharacteristic(device))
.then(characteristic => startNotifications(characteristic))
.catch(error => log(error));
function requestBluetoothDevice() {
log('Requesting bluetooth device...');
return navigator.bluetooth.requestDevice({
filters: [{services: [myService]}],
})
.then(device => {
log('"' + device.name + '" bluetooth device selected');
deviceCache = device;
// Listen for disconnet event
deviceCache.addEventListener('gattserverdisconnected',
handleDisconnection);
return deviceCache;
});
}
Also, there is a way of reconnecting after site refresh,但它是not implemented yet
答案 1 :(得分:0)
我最近实现了一个新的权限后端以及两个API,这些API将允许使用先前允许的蓝牙设备。
新权限后端在chrome:// flags /#enable-web-bluetooth-new-permissions-backend后面实现。新的后端将保留通过requestDevice()
授予的设备权限,直到在“网站设置”或“页面信息”对话框中重置权限为止。
对于Chrome 85.0.4165.0或更高版本,getDevices()
和watchAdvertisements()
在chrome:// flags /#enable-experimental-web-platform-features标志之后实现。这些API的建议用法是使用getDevices()
检索允许的BluetoothDevices数组,然后在这些设备上调用watchAdvertisements()
开始扫描。当从设备检测到广告包时,advertisementreceived
事件将在与其对应的设备上触发。此时,蓝牙设备已在范围内并且可以连接。
请尝试使用此新功能,并使用Blink>蓝牙组件在https://crbug.com上提交所有错误。