USBDevice

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

注意:此功能在 Web Workers 中可用。

WebUSB API 的 USBDevice 接口提供对配对 USB 设备元数据的访问以及控制设备的方法。

实例属性

USBDevice.configuration 只读 实验性

一个 USBConfiguration 对象,用于当前为已配对 USB 设备选择的接口。

USBDevice.configurations 只读 实验性

一个 array,包含用于控制已配对 USB 设备的设备特定接口。

USBDevice.deviceClass 只读 实验性

用于识别 USB 设备以加载兼容 USB 驱动程序的三个属性之一。另外两个属性是 USBDevice.deviceSubclassUSBDevice.deviceProtocol

USBDevice.deviceProtocol 只读 实验性

用于识别 USB 设备以加载兼容 USB 驱动程序的三个属性之一。另外两个属性是 USBDevice.deviceClassUSBDevice.deviceSubclass

USBDevice.deviceSubclass 只读 实验性

用于识别 USB 设备以加载兼容 USB 驱动程序的三个属性之一。另外两个属性是 USBDevice.deviceClassUSBDevice.deviceProtocol

USBDevice.deviceVersionMajor 只读 实验性

语义版本控制方案中设备的主版本号。

USBDevice.deviceVersionMinor 只读 实验性

语义版本控制方案中设备的次版本号。

USBDevice.deviceVersionSubminor 只读 实验性

语义版本控制方案中设备的补丁版本号。

USBDevice.manufacturerName 只读 实验性

制造 USB 设备的组织的名称。

USBDevice.opened 只读 实验性

指示是否已与已配对的 USB 设备启动会话。

USBDevice.productId 只读 实验性

制造商定义的标识 USB 设备的代码。

USBDevice.productName 只读 实验性

制造商定义的标识 USB 设备的名称。

USBDevice.serialNumber 只读 实验性

特定 USB 设备的制造商定义序列号。

USBDevice.usbVersionMajor 只读 实验性

声明设备支持的 USB 协议版本的三个属性之一。另外两个属性是 USBDevice.usbVersionMinorUSBDevice.usbVersionSubminor

USBDevice.usbVersionMinor 只读 实验性

声明设备支持的 USB 协议版本的三个属性之一。另外两个属性是 USBDevice.usbVersionMajorUSBDevice.usbVersionSubminor

USBDevice.usbVersionSubminor 只读 实验性

声明设备支持的 USB 协议版本的三个属性之一。另外两个属性是 USBDevice.usbVersionMajorUSBDevice.usbVersionMinor

USBDevice.vendorId 只读 实验性

usb.org 分配的官方供应商 ID。

实例方法

USBDevice.claimInterface() 实验性

返回一个 Promise,在请求的接口被独占访问时解决。

USBDevice.clearHalt() 实验性

返回一个 Promise,在暂停条件清除时解决。

USBDevice.controlTransferIn() 实验性

返回一个 Promise,当命令或状态操作已传输到 USB 设备时,用 USBInTransferResult 解决。

USBDevice.controlTransferOut() 实验性

返回一个 Promise,当命令或状态操作已从 USB 设备传输时,用 USBOutTransferResult 解决。

USBDevice.close() 实验性

返回一个 Promise,在所有开放接口被释放且设备会话结束时解决。

USBDevice.forget() 实验性

返回一个 Promise,在所有开放接口被释放、设备会话结束且权限重置后解决。

USBDevice.isochronousTransferIn() 实验性

返回一个 Promise,当时间敏感信息已传输到 USB 设备时,用 USBIsochronousInTransferResult 解决。

USBDevice.isochronousTransferOut() 实验性

返回一个 Promise,当时间敏感信息已从 USB 设备传输时,用 USBIsochronousOutTransferResult 解决。

USBDevice.open() 实验性

返回一个 Promise,在设备会话启动时解决。

USBDevice.releaseInterface() 实验性

返回一个 Promise,在被声明的接口从独占访问中释放时解决。

USBDevice.reset() 实验性

返回一个 Promise,在设备重置且所有应用程序操作被取消且其 Promise 被拒绝时解决。

USBDevice.selectAlternateInterface() 实验性

返回一个 Promise,在指定的备用端点被选择时解决。

USBDevice.selectConfiguration() 实验性

返回一个 Promise,在指定的配置被选择时解决。

USBDevice.transferIn() 实验性

返回一个 Promise,当批量或中断数据从 USB 设备接收时,用 USBInTransferResult 解决。

USBDevice.transferOut() 实验性

返回一个 Promise,当批量或中断数据发送到 USB 设备时,用 USBOutTransferResult 解决。

规范

规范
WebUSB API
# 设备使用

浏览器兼容性