chrome.hid

Beschrijving

Gebruik de chrome.hid API om te communiceren met verbonden HID-apparaten. Deze API biedt toegang tot HID-bewerkingen vanuit de context van een app. Met deze API kunnen apps functioneren als stuurprogramma's voor hardwareapparaten. Fouten die door deze API worden gegenereerd, worden gemeld 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 niet gedefinieerd.

Rechten

hid

Typen

DeviceFilter

Eigenschappen

  • productId

    number optioneel

    Product-ID van het apparaat, wordt alleen gecontroleerd als de leveranciers-ID overeenkomt.

  • gebruik

    number optioneel

    HID-gebruiks-ID, wordt alleen gecontroleerd als de HID-gebruikspagina overeenkomt.

  • usagePage

    number optioneel

    ID van HID-gebruikspagina.

  • vendorId

    number optioneel

    ID van apparaatleverancier.

GetDevicesOptions

Eigenschappen

  • filters

    DeviceFilter[] optioneel

    Er wordt een apparaat geretourneerd dat overeenkomt met een bepaald filter. Een lege filterlijst retourneert alle apparaten waarvoor de app rechten heeft.

  • productId

    number optioneel

    Beëindigd

    Dit is gelijk aan de instelling DeviceFilter.productId.

  • vendorId

    number optioneel

    Beëindigd

    Komt overeen met de instelling DeviceFilter.vendorId.

HidCollectionInfo

Eigenschappen

  • reportIds

    number[]

    Rapport-ID's die bij de collectie en de onderliggende items horen.

  • gebruik

    getal

    Door de pagina gedefinieerde gebruiks-ID.

  • usagePage

    getal

    ID van HID-gebruikspagina.

HidConnectInfo

Eigenschappen

  • connectionId

    getal

    De ondoorzichtige ID die wordt gebruikt om deze verbinding in alle andere functies te identificeren.

HidDeviceInfo

Eigenschappen

  • collecties

    Collecties op het hoogste niveau uit de rapportbeschrijvingen van dit apparaat.

  • deviceId

    getal

    Ondoorzichtige apparaat-ID.

  • maxFeatureReportSize

    getal

    Maximale grootte van het kenmerkrapport van de collectie op het hoogste niveau.

  • maxInputReportSize

    getal

    De maximale grootte van het invoerrapport van de collectie op het hoogste niveau.

  • maxOutputReportSize

    getal

    Maximale grootte van het uitvoerrapport van de collectie op het hoogste niveau.

  • productId

    getal

    Product-ID.

  • productName

    tekenreeks

    Chrome 46+

    De productnaam die van het apparaat is gelezen, indien beschikbaar.

  • reportDescriptor

    ArrayBuffer

    Onbewerkte apparaatrapportdescriptor (niet beschikbaar in Windows).

  • serialNumber

    tekenreeks

    Chrome 46+

    Het serienummer dat van het apparaat is gelezen, indien beschikbaar.

  • vendorId

    getal

    Leverancier-ID.

Methoden

connect()

Promise
chrome.hid.connect(
  deviceId: number,
  callback?: function,
)
: Promise<HidConnectInfo>

Een verbinding met een HID-apparaat openen voor communicatie.

Parameters

Retourzendingen

  • Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

disconnect()

Promise
chrome.hid.disconnect(
  connectionId: number,
  callback?: function,
)
: Promise<void>

De verbinding met een apparaat verbreken. Bewerkingen aanroepen op een apparaat nadat je dit hebt aangeroepen, is veilig maar heeft geen effect.

Parameters

  • connectionId

    getal

    De connectionId die wordt geretourneerd door connect.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    () => void

Retourzendingen

  • Promise<void>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

getDevices()

Promise
chrome.hid.getDevices(
  options: GetDevicesOptions,
  callback?: function,
)
: Promise<HidDeviceInfo[]>

Verbonden HID-apparaten opsommen.

Parameters

  • De eigenschappen waarnaar moet worden gezocht op doelapparaten.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    (devices: HidDeviceInfo[]) => void

Retourzendingen

  • Promise<HidDeviceInfo[]>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

receive()

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

Het volgende invoerrapport van het apparaat ontvangen.

Parameters

  • connectionId

    getal

    De connectionId die wordt geretourneerd door connect.

  • callback

    functie

    De parameter callback ziet er zo uit:

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

    • reportId

      getal

      De rapport-ID of 0 als er geen is.

    • gegevens

      ArrayBuffer

      De rapportgegevens, het voorvoegsel van de rapport-ID (indien aanwezig) wordt verwijderd.

receiveFeatureReport()

Promise
chrome.hid.receiveFeatureReport(
  connectionId: number,
  reportId: number,
  callback?: function,
)
: Promise<ArrayBuffer>

Een functierapport van het apparaat aanvragen.

Parameters

  • connectionId

    getal

    De connectionId die wordt geretourneerd door connect.

  • reportId

    getal

    De rapport-ID, of 0 als er geen is.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    (data: ArrayBuffer) => void

    • gegevens

      ArrayBuffer

      De rapportgegevens, waaronder een voorvoegsel voor de rapport-ID als het apparaat er een stuurt.

Retourzendingen

  • Promise<ArrayBuffer>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

send()

Promise
chrome.hid.send(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<void>

Stuur een uitvoerrapport naar het apparaat.

Opmerking: Voeg geen voorvoegsel voor rapport-ID toe aan data. Deze wordt zo nodig toegevoegd.

Parameters

  • connectionId

    getal

    De connectionId die wordt geretourneerd door connect.

  • reportId

    getal

    De rapport-ID die u wilt gebruiken of 0 als er geen is.

  • gegevens

    ArrayBuffer

    De rapportgegevens.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    () => void

Retourzendingen

  • Promise<void>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

sendFeatureReport()

Promise
chrome.hid.sendFeatureReport(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<void>

Stuur een functierapport naar het apparaat.

Opmerking: Voeg geen voorvoegsel voor rapport-ID toe aan data. Deze wordt zo nodig toegevoegd.

Parameters

  • connectionId

    getal

    De connectionId die wordt geretourneerd door connect.

  • reportId

    getal

    De rapport-ID die u wilt gebruiken of 0 als er geen is.

  • gegevens

    ArrayBuffer

    De rapportgegevens.

  • callback

    functie optioneel

    De parameter callback ziet er zo uit:

    () => void

Retourzendingen

  • Promise<void>

    Chrome 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 als een apparaat aan het systeem wordt toegevoegd. Gebeurtenissen worden alleen uitgezonden naar apps en extensies die toegangsrechten hebben voor het apparaat. Het recht is misschien verleend tijdens de installatie of toen de gebruiker een optioneel recht accepteerde (zie permissions.request).

Parameters

onDeviceRemoved

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

Gebeurtenis die wordt gegenereerd als een apparaat uit het systeem wordt verwijderd. Ga naar onDeviceAdded voor de gebeurtenissen die worden geleverd.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (deviceId: number) => void

    • deviceId

      getal