Beschreibung
Über die chrome.hid
API kannst du mit verbundenen HID-Geräten interagieren. Diese API bietet Zugriff auf HID-Vorgänge aus dem Kontext einer Anwendung. Mit dieser API können Apps als Treiber für Hardwaregeräte fungieren. Von dieser API generierte Fehler werden gemeldet, indem runtime.lastError
festgelegt und der reguläre Callback der Funktion ausgeführt wird. Die regulären Parameter des Callbacks sind in diesem Fall nicht definiert.
Berechtigungen
hid
Typen
DeviceFilter
Attribute
-
productId
Zahl optional
Produkt-ID des Geräts; wird nur geprüft, wenn die Anbieter-ID übereinstimmt.
-
Nutzung
Zahl optional
HID-Nutzungs-ID; wird nur geprüft, wenn die Seite zur HID-Nutzung übereinstimmt.
-
usagePage
Zahl optional
ID der HID-Nutzungsseite.
-
vendorId
Zahl optional
ID des Geräteherstellers.
GetDevicesOptions
Attribute
-
Filter
DeviceFilter[] optional
Es wird ein Gerät zurückgegeben, das einem bestimmten Filter entspricht. Bei einer leeren Filterliste werden alle Geräte angezeigt, für die die App eine Berechtigung hat.
-
productId
Zahl optional
<ph type="x-smartling-placeholder"></ph> EingestelltEntspricht der Einstellung
DeviceFilter.productId
. -
vendorId
Zahl optional
<ph type="x-smartling-placeholder"></ph> EingestelltEntspricht der Einstellung
DeviceFilter.vendorId
.
HidCollectionInfo
Attribute
-
reportIds
Zahl[]
Berichts-IDs, die zur Sammlung und ihren untergeordneten Elementen gehören
-
Nutzung
Zahl
Seitendefinierte Nutzungs-ID.
-
usagePage
Zahl
ID der HID-Nutzungsseite.
HidConnectInfo
Attribute
-
connectionId
Zahl
Die intransparente ID, mit der diese Verbindung in allen anderen Funktionen identifiziert wird.
HidDeviceInfo
Attribute
-
Sammlungen
Sammlungen der obersten Ebene aus den Berichtsdeskriptoren dieses Geräts.
-
deviceId
Zahl
Undurchsichtige Geräte-ID.
-
maxFeatureReportSize
Zahl
Die maximale Größe des Featureberichts der Sammlung auf oberster Ebene.
-
maxInputReportSize
Zahl
Die maximale Größe des Eingabeberichts für die Sammlung der obersten Ebene.
-
maxOutputReportSize
Zahl
Die maximale Größe des Ausgabeberichts der Sammlung auf oberster Ebene.
-
productId
Zahl
Produkt-ID.
-
productName (Produktname)
String
Chrome (ab Version 46)Der vom Gerät vorgelesene Produktname, falls verfügbar.
-
reportDescriptor
ArrayBuffer
Deskriptor des Berichts zu unformatierten Geräten (nicht verfügbar unter Windows).
-
serialNumber
String
Chrome (ab Version 46)Die vom Gerät ausgelesene Seriennummer, falls verfügbar.
-
vendorId
Zahl
Anbieter-ID.
Methoden
connect()
chrome.hid.connect(
deviceId: number,
callback?: function,
)
Stellen Sie für die Kommunikation eine Verbindung zu einem HID-Gerät her.
Parameter
-
deviceId
Zahl
Die
HidDeviceInfo.deviceId
des Geräts, das geöffnet werden soll. -
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(connection: HidConnectInfo) => void
-
Verbindung
-
Gibt Folgendes zurück:
-
Promise<HidConnectInfo>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
disconnect()
chrome.hid.disconnect(
connectionId: number,
callback?: function,
)
Trennen Sie die Verbindung zu einem Gerät. Das Aufrufen von Vorgängen auf einem Gerät nach dem Aufrufen ist sicher, hat aber keine Auswirkungen.
Parameter
-
connectionId
Zahl
Die von
connect
zurückgegebeneconnectionId
. -
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getDevices()
chrome.hid.getDevices(
options: GetDevicesOptions,
callback?: function,
)
Verbundene HID-Geräte auflisten
Parameter
-
Optionen
Die Eigenschaften, nach denen auf Zielgeräten gesucht werden soll.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(devices: HidDeviceInfo[]) => void
-
Geräte
-
Gibt Folgendes zurück:
-
Promise<HidDeviceInfo[]>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
receive()
chrome.hid.receive(
connectionId: number,
callback: function,
)
Den nächsten Eingabebericht vom Gerät erhalten
Parameter
-
connectionId
Zahl
Die von
connect
zurückgegebeneconnectionId
. -
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(reportId: number, data: ArrayBuffer) => void
-
reportId
Zahl
Die Berichts-ID oder
0
, wenn keine. -
Daten
ArrayBuffer
Die Berichtsdaten. Das Präfix der Berichts-ID (falls vorhanden) wird entfernt.
-
receiveFeatureReport()
chrome.hid.receiveFeatureReport(
connectionId: number,
reportId: number,
callback?: function,
)
Fordern Sie einen Funktionsbericht vom Gerät an.
Parameter
-
connectionId
Zahl
Die von
connect
zurückgegebeneconnectionId
. -
reportId
Zahl
Die Berichts-ID oder
0
, wenn keine. -
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(data: ArrayBuffer) => void
-
Daten
ArrayBuffer
Die Berichtsdaten, einschließlich eines Berichts-ID-Präfixes, falls eines vom Gerät gesendet wird
-
Gibt Folgendes zurück:
-
Promise<ArrayBuffer>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
send()
chrome.hid.send(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
)
Ausgabebericht an das Gerät senden
Hinweis:Geben Sie in data
kein Präfix für die Berichts-ID an. Er wird bei Bedarf hinzugefügt.
Parameter
-
connectionId
Zahl
Die von
connect
zurückgegebeneconnectionId
. -
reportId
Zahl
Die zu verwendende Berichts-ID oder
0
, wenn keine. -
Daten
ArrayBuffer
Die Berichtsdaten.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
sendFeatureReport()
chrome.hid.sendFeatureReport(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
)
Funktionsbericht an das Gerät senden.
Hinweis:Geben Sie in data
kein Präfix für die Berichts-ID an. Er wird bei Bedarf hinzugefügt.
Parameter
-
connectionId
Zahl
Die von
connect
zurückgegebeneconnectionId
. -
reportId
Zahl
Die zu verwendende Berichts-ID oder
0
, wenn keine. -
Daten
ArrayBuffer
Die Berichtsdaten.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
Gibt Folgendes zurück:
-
Versprechen<void>
Chrome 117 oder höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
Ereignisse
onDeviceAdded
chrome.hid.onDeviceAdded.addListener(
callback: function,
)
Das Ereignis wird generiert, wenn dem System ein Gerät hinzugefügt wird. Ereignisse werden nur an Apps und Erweiterungen übertragen, die auf das Gerät zugreifen dürfen. Die Berechtigung wurde möglicherweise bei der Installation erteilt oder wenn der Nutzer eine optionale Berechtigung akzeptiert hat (siehe permissions.request
).
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(device: HidDeviceInfo) => void
-
Gerät
-
onDeviceRemoved
chrome.hid.onDeviceRemoved.addListener(
callback: function,
)
Das Ereignis wird generiert, wenn ein Gerät aus dem System entfernt wird. Welche Ereignisse übermittelt werden, erfahren Sie unter onDeviceAdded
.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(deviceId: number) => void
-
deviceId
Zahl
-