The USBAlternateInterface interface of the WebUSB API provides information about a particular configuration of an interface provided by the USB device. An interface includes one or more alternate settings which can configure a set of endpoints based on the operating mode of the device.
Constructor
USBAlternateInterface() Experimental
-
Creates a new USBAlternateInterface object which will be populated with information about the alternate interface of the provided USBInterface with the given alternate setting number.
Instance properties
USBAlternateInterface.alternateSetting Read only Experimental
-
Returns the alternate setting number of this interface. This is equal to the bAlternateSetting field of the interface descriptor defining this interface.
USBAlternateInterface.interfaceClass Read only Experimental
-
Returns the class of this interface. This is equal to the bInterfaceClass field of the interface descriptor defining this interface. Standardized values for this field are defined by the USB Implementers Forum. A value of 0xFF indicates a vendor-defined interface.
USBAlternateInterface.interfaceSubclass Read only Experimental
-
Returns the subclass of this interface. This is equal to the bInterfaceSubClass field of the interface descriptor defining this interface. The meaning of this value depends on the interfaceClass field.
USBAlternateInterface.interfaceProtocol Read only Experimental
-
Returns the protocol supported by this interface. This is equal to the bInterfaceProtocol field of the interface descriptor defining this interface. The meaning of this value depends on the interfaceClass and interfaceSubclass fields.
USBAlternateInterface.interfaceName Read only Experimental
-
Returns the name of the interface, if one is provided by the device. This is the value of the string descriptor with the index specified by the iInterface field of the interface descriptor defining this interface.
USBAlternateInterface.endpoints Read only Experimental
-
Returns an array containing instances of the USBEndpoint interface describing each of the endpoints that are part of this interface.
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
USBAlternateInterface |
61 |
79 |
No |
No |
48 |
No |
No |
61 |
No |
45 |
No |
8.0 |
USBAlternateInterface |
61 |
79 |
No |
No |
48 |
No |
NoWebView exposes this interface, but does not support WebUSB. See Chromium bug 933055.
|
61 |
No |
45 |
No |
8.0 |
alternateSetting |
61 |
79 |
No |
No |
48 |
No |
No |
61 |
No |
45 |
No |
8.0 |
endpoints |
61 |
79 |
No |
No |
48 |
No |
No |
61 |
No |
45 |
No |
8.0 |
interfaceClass |
61 |
79 |
No |
No |
48 |
No |
No |
61 |
No |
45 |
No |
8.0 |
interfaceName |
61 |
79 |
No |
No |
48 |
No |
No |
61 |
No |
45 |
No |
8.0 |
interfaceProtocol |
61 |
79 |
No |
No |
48 |
No |
No |
61 |
No |
45 |
No |
8.0 |
interfaceSubclass |
61 |
79 |
No |
No |
48 |
No |
No |
61 |
No |
45 |
No |
8.0 |