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 |