Beschrijving
Gebruik de chrome.hid
API om te communiceren met verbonden HID-apparaten. Deze API biedt toegang tot HID-bewerkingen binnen de context van een app. Met deze API kunnen apps functioneren als drivers voor hardwareapparaten. Fouten die door deze API worden gegenereerd, worden gerapporteerd door runtime.lastError
in te stellen en de reguliere callback van de functie uit te voeren. De reguliere parameters van de callback zijn in dit geval ongedefinieerd.
Machtigingen
hid
Typen
DeviceFilter
Eigenschappen
- product-ID
nummer optioneel
Product-ID van het apparaat: wordt alleen gecontroleerd als de leveranciers-ID overeenkomt.
- gebruik
nummer optioneel
HID-gebruiks-ID, wordt alleen gecontroleerd als de HID-gebruikspagina overeenkomt.
- gebruikspagina
nummer optioneel
HID-gebruikspagina-identificatie.
- leveranciers-ID
nummer optioneel
Leveranciers-ID van het apparaat.
GetDevicesOptions
Eigenschappen
- filters
DeviceFilter [] optioneel
Er wordt een apparaat geretourneerd dat aan een bepaald filter voldoet. Een lege filterlijst retourneert alle apparaten waarvoor de app toestemming heeft.
- product-ID
nummer optioneel
VerouderdEquivalent aan het instellen van
DeviceFilter.productId
. - leveranciers-ID
nummer optioneel
VerouderdEquivalent aan het instellen
DeviceFilter.vendorId
.
HidCollectionInfo
Eigenschappen
- rapport-ID's
nummer[]
Rapporteer ID's die bij de verzameling en de onderliggende items horen.
- gebruik
nummer
Paginagedefinieerde gebruiks-ID.
- gebruikspagina
nummer
HID-gebruikspagina-identificatie.
HidConnectInfo
Eigenschappen
- verbindings-ID
nummer
De ondoorzichtige ID die wordt gebruikt om deze verbinding in alle andere functies te identificeren.
HidDeviceInfo
Eigenschappen
- collecties
Verzamelingen op het hoogste niveau uit de rapportbeschrijvingen van dit apparaat.
- apparaat-ID
nummer
Ondoorzichtige apparaat-ID.
- maxFeatureReportSize
nummer
Maximale grootte van het kenmerkrapport van de collectie op het hoogste niveau.
- maxInputReportSize
nummer
Maximale invoerrapportgrootte voor de collectie op het hoogste niveau.
- maxOutputReportSize
nummer
Maximale uitvoerrapportgrootte voor de collectie op het hoogste niveau.
- product-ID
nummer
Product-ID.
- productnaam
snaar
Chroom 46+De productnaam die van het apparaat wordt gelezen, indien beschikbaar.
- rapportDescriptor
ArrayBuffer
Rapportbeschrijving van ruw apparaat (niet beschikbaar op Windows).
- serienummer
snaar
Chroom 46+Het serienummer dat van het apparaat wordt afgelezen, indien beschikbaar.
- leveranciers-ID
nummer
Leveranciers-ID.
Methoden
connect()
chrome.hid.connect(
deviceId: number,
callback?: function,
): Promise<HidConnectInfo>
Open een verbinding met een HID-apparaat voor communicatie.
Parameters
- apparaat-ID
nummer
De
HidDeviceInfo.deviceId
van het te openen apparaat. - terugbellen
functie optioneel
De
callback
ziet er als volgt uit:(connection: HidConnectInfo) => void
- verbinding
Retourneren
Belofte< HidConnectInfo >
Chroom 117+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
disconnect()
chrome.hid.disconnect(
connectionId: number,
callback?: function,
): Promise<void>
De verbinding met een apparaat verbreken. Het uitvoeren van bewerkingen op een apparaat na deze aanroep is veilig, maar heeft geen effect.
Parameters
- verbindings-ID
nummer
De
connectionId
die doorconnect
wordt geretourneerd. - terugbellen
functie optioneel
De
callback
ziet er als volgt uit:() => void
Retourneren
Belofte<leegte>
Chroom 117+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
getDevices()
chrome.hid.getDevices(
options: GetDevicesOptions,
callback?: function,
): Promise<HidDeviceInfo[]>
Maak een lijst van aangesloten HID-apparaten.
Parameters
- opties
De eigenschappen waarnaar moet worden gezocht op doelapparaten.
- terugbellen
functie optioneel
De
callback
ziet er als volgt uit:(devices: HidDeviceInfo[]) => void
- apparaten
Retourneren
Belofte< HidDeviceInfo []>
Chroom 117+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
receive()
chrome.hid.receive(
connectionId: number,
callback: function,
): void
Ontvang het volgende invoerrapport van het apparaat.
Parameters
- verbindings-ID
nummer
De
connectionId
die doorconnect
wordt geretourneerd. - terugbellen
functie
De
callback
ziet er als volgt uit:(reportId: number, data: ArrayBuffer) => void
- rapport-ID
nummer
Het rapport-ID of
0
als er geen is. - gegevens
ArrayBuffer
De rapportgegevens en het rapport-ID-voorvoegsel (indien aanwezig) worden verwijderd.
receiveFeatureReport()
chrome.hid.receiveFeatureReport(
connectionId: number,
reportId: number,
callback?: function,
): Promise<ArrayBuffer>
Vraag een functie-rapport van het apparaat op.
Parameters
- verbindings-ID
nummer
De
connectionId
die doorconnect
wordt geretourneerd. - rapport-ID
nummer
Het rapport-ID, of
0
als er geen is. - terugbellen
functie optioneel
De
callback
ziet er als volgt uit:(data: ArrayBuffer) => void
- gegevens
ArrayBuffer
De rapportgegevens, inclusief een rapport-ID-voorvoegsel als het apparaat er een verzendt.
Retourneren
Belofte<ArrayBuffer>
Chroom 117+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
send()
chrome.hid.send(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
): Promise<void>
Stuur een uitvoerrapport naar het apparaat.
Let op: Voeg geen rapport-ID-prefix toe aan data
. Deze wordt indien nodig toegevoegd.
Parameters
- verbindings-ID
nummer
De
connectionId
die doorconnect
wordt geretourneerd. - rapport-ID
nummer
De te gebruiken rapport-ID, of
0
als er geen is. - gegevens
ArrayBuffer
De rapportgegevens.
- terugbellen
functie optioneel
De
callback
ziet er als volgt uit:() => void
Retourneren
Belofte<leegte>
Chroom 117+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
sendFeatureReport()
chrome.hid.sendFeatureReport(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
): Promise<void>
Stuur een functierapport naar het apparaat.
Let op: Voeg geen rapport-ID-prefix toe aan data
. Deze wordt indien nodig toegevoegd.
Parameters
- verbindings-ID
nummer
De
connectionId
die doorconnect
wordt geretourneerd. - rapport-ID
nummer
De te gebruiken rapport-ID, of
0
als er geen is. - gegevens
ArrayBuffer
De rapportgegevens.
- terugbellen
functie optioneel
De
callback
ziet er als volgt uit:() => void
Retourneren
Belofte<leegte>
Chroom 117+Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.
Evenementen
onDeviceAdded
chrome.hid.onDeviceAdded.addListener(
callback: function,
)
Gebeurtenis die wordt gegenereerd wanneer een apparaat aan het systeem wordt toegevoegd. Gebeurtenissen worden alleen verzonden naar apps en extensies die toestemming hebben om toegang te krijgen tot het apparaat. Deze toestemming kan zijn verleend tijdens de installatie of toen de gebruiker een optionele toestemming accepteerde (zie permissions.request
).
Parameters
- terugbellen
functie
De
callback
ziet er als volgt uit:(device: HidDeviceInfo) => void
- apparaat
onDeviceRemoved
chrome.hid.onDeviceRemoved.addListener(
callback: function,
)
Gebeurtenis die wordt gegenereerd wanneer een apparaat uit het systeem wordt verwijderd. Zie onDeviceAdded
om te zien welke gebeurtenissen worden geleverd.
Parameters
- terugbellen
functie
De
callback
ziet er als volgt uit:(deviceId: number) => void
- apparaat-ID
nummer