chrome.hid

Beschreibung

Verwenden Sie die chrome.hid API, um mit verbundenen HID-Geräten zu interagieren. Diese API bietet Zugriff auf HID-Vorgänge im Kontext einer App. Mit dieser API können Apps als Treiber für Hardwaregeräte dienen. 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

    Nummer optional

    Produkt-ID des Geräts: wird nur angekreuzt, wenn die Anbieter-ID übereinstimmt.

  • Nutzung

    Nummer optional

    HID-Nutzungs-ID; wird nur geprüft, wenn die HID-Nutzungsseite übereinstimmt.

  • usagePage

    Nummer optional

    ID der HID-Nutzungsseite.

  • vendorId

    Nummer optional

    Anbieter-ID des Geräts.

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 zurückgegeben, für die die App die Berechtigung hat.

  • productId

    Nummer optional

    Eingestellt

    Entspricht der Einstellung DeviceFilter.productId.

  • vendorId

    Nummer optional

    Eingestellt

    Entspricht der Einstellung DeviceFilter.vendorId.

HidCollectionInfo

Attribute

  • reportIds

    Nummer[]

    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, die zur Identifizierung dieser Verbindung in allen anderen Funktionen verwendet wird.

HidDeviceInfo

Attribute

  • Sammlungen

    Sammlungen auf oberster Ebene aus den Berichtsdeskriptoren dieses Geräts.

  • deviceId

    Zahl

    Intransparente Geräte-ID.

  • maxFeatureReportSize

    Zahl

    Die maximale Berichtsgröße der Sammlung auf oberster Ebene.

  • maxInputReportSize

    Zahl

    Maximale Größe des Eingabeberichts für die Sammlung der obersten Ebene.

  • maxOutputReportSize

    Zahl

    Maximale Größe des Ausgabeberichts der Sammlung auf oberster Ebene

  • productId

    Zahl

    Produkt-ID.

  • productName

    String

    Chrome 46 und höher

    Der Produktname, der auf dem Gerät angezeigt wird, falls verfügbar.

  • reportDescriptor

    ArrayBuffer

    Unbearbeiteter Geräteberichtsdeskriptor (nicht unter Windows verfügbar)

  • serialNumber

    String

    Chrome 46 und höher

    Die vom Gerät abgelesene Seriennummer, falls verfügbar.

  • vendorId

    Zahl

    Anbieter-ID.

Methoden

connect()

Versprechen
chrome.hid.connect(
  deviceId: number,
  callback?: function,
)

Stellen Sie für die Kommunikation eine Verbindung zu einem HID-Gerät her.

Parameters

Rückgaben

  • Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.

disconnect()

Versprechen
chrome.hid.disconnect(
  connectionId: number,
  callback?: function,
)

Verbindung zu einem Gerät trennen Das Aufrufen von Vorgängen auf einem Gerät nach dem Aufrufen ist sicher, hat aber keine Auswirkungen.

Parameters

  • connectionId

    Zahl

    Das von connect zurückgegebene connectionId.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.

getDevices()

Versprechen
chrome.hid.getDevices(
  options: GetDevicesOptions,
  callback?: function,
)

Verbundene HID-Geräte auflisten.

Parameters

  • Die Eigenschaften, nach denen auf den Zielgeräten gesucht werden soll.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (devices: HidDeviceInfo[])=>void

Rückgaben

  • Promise<HidDeviceInfo[]>

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.

receive()

chrome.hid.receive(
  connectionId: number,
  callback: function,
)

Den nächsten Eingabebericht vom Gerät empfangen.

Parameters

  • connectionId

    Zahl

    Das von connect zurückgegebene connectionId.

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (reportId: number,data: ArrayBuffer)=>void

    • reportId

      Zahl

      Die Berichts-ID oder 0, falls keine

    • Daten

      ArrayBuffer

      Die Berichtsdaten und das Präfix der Berichts-ID (falls vorhanden) wird entfernt.

receiveFeatureReport()

Versprechen
chrome.hid.receiveFeatureReport(
  connectionId: number,
  reportId: number,
  callback?: function,
)

Fordern Sie einen Funktionsbericht vom Gerät an.

Parameters

  • connectionId

    Zahl

    Das von connect zurückgegebene connectionId.

  • reportId

    Zahl

    Die Berichts-ID oder 0, falls keine

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (data: ArrayBuffer)=>void

    • Daten

      ArrayBuffer

      Die Berichtsdaten, einschließlich eines Berichts-ID-Präfix, falls eines vom Gerät gesendet wird

Rückgaben

  • Promise<ArrayBuffer>

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.

send()

Versprechen
chrome.hid.send(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)

Ausgabebericht an das Gerät senden

Hinweis:Fügen Sie in data kein Präfix für die Berichts-ID ein. Sie wird bei Bedarf hinzugefügt.

Parameters

  • connectionId

    Zahl

    Das von connect zurückgegebene connectionId.

  • reportId

    Zahl

    Die zu verwendende Berichts-ID oder 0, falls keine

  • Daten

    ArrayBuffer

    Die Berichtsdaten

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.

sendFeatureReport()

Versprechen
chrome.hid.sendFeatureReport(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)

Einen Funktionsbericht an das Gerät senden

Hinweis:Fügen Sie in data kein Präfix für die Berichts-ID ein. Sie wird bei Bedarf hinzugefügt.

Parameters

  • connectionId

    Zahl

    Das von connect zurückgegebene connectionId.

  • reportId

    Zahl

    Die zu verwendende Berichts-ID oder 0, falls keine

  • Daten

    ArrayBuffer

    Die Berichtsdaten

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.

Veranstaltungen

onDeviceAdded

chrome.hid.onDeviceAdded.addListener(
  callback: function,
)

Ereignis, das generiert wird, 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 oder wenn der Nutzer eine optionale Berechtigung akzeptiert (siehe permissions.request) erteilt.

Parameters

onDeviceRemoved

chrome.hid.onDeviceRemoved.addListener(
  callback: function,
)

Ereignis, das generiert wird, wenn ein Gerät aus dem System entfernt wird. Welche Ereignisse ausgelöst werden, sehen Sie unter onDeviceAdded.

Parameters

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (deviceId: number)=>void

    • deviceId

      Zahl