我正在尝试使用html和javascript开发webusb api,操作系统是Ubuntu 16.04。我能够从浏览器连接并打开USB设备,但是我收到错误“无法声明接口0:设备或资源忙(16)”。请给我一个合适的解决方案。
这是脚本代码, var device;
function setup(device) {
alert(device.productName+" open");
return device.open()
.then(() => device.selectConfiguration(1))
.then(() => device.claimInterface(0))
.then(() => this.device_.selectAlternateInterface(1, 0))
}
function connect() {
if (device == null) {
navigator.usb.requestDevice({ filters: [{ vendorId : 2352 }] })
.then(selectedDevice => {
device = selectedDevice;
console.log(device);
return setup(device);
alert("usb connected");
})
.catch(error => { console.log(error); })
}
}
navigator.usb.getDevices()
.then(devices => {
if (devices.length > 0) {
device = devices[0];
return setup(device);
}
})
.catch(error => { console.log(error); });
这是我添加的规则文件
SUBSYSTEM ==“usb”,ATTR {idVendor} ==“0930”,ATTR {idProduct} ==“6544”,MODE =“0666”,GROUP =“plugdev”
我是否可以通过从内核分离设备来完成此操作?怎么可能?