我试图找到一种方法来识别WebUSB是否是同一多功能设备(即打印机)的一部分。作为一个例子,我可以想象由音频和WebUSB功能组成的设备。对于音频部分,我可以使用以下API:
navigator.mediaDevices返回deviceId和groupId。但是,在WebUSB的情况下,没有可用于匹配这两个设备的fr的此类组标识符。唯一能做的就是请求设备:
var device = navigator.usb.requestDevices({filters:[]})检查序列号--但这无助于匹配由两个API检索的设备。我在这里发现了一个关于设备唯一标识符的老讨论:https://github.com/w3ctag/design-reviews/issues/64
然而,似乎并没有得出任何结论。是否有任何机制允许验证WebUSB和WebAudio (或其他API)是否属于同一硬件?
发布于 2020-01-15 20:05:16
这是一个非常有趣的问题,我们(在铬项目)还没有机会充分探讨。理想情况下,您可以按设备对各种API返回的接口进行分组。不幸的是,这些API在浏览器中的实现几乎完全不知道彼此,并且依赖于不同的操作系统API,这些API可能也不知道彼此。长话短说,要建立这种可靠的分组,需要做大量的工作。
也就是说,WebUSB和WebAudio API都提供了对某些设备属性的访问,因此应该可以根据设备名称这样的东西进行松散的关联。
https://stackoverflow.com/questions/59740015
复制相似问题