chrome.hid

Description

Utilisez l'API chrome.hid pour interagir avec les appareils HID connectés. Cette API permet d'accéder aux opérations HID depuis le contexte d'une application. Elle permet aux applications de fonctionner comme pilotes pour des périphériques matériels. Les erreurs générées par cette API sont signalées en définissant runtime.lastError et en exécutant le rappel standard de la fonction. Dans ce cas, les paramètres standards du rappel ne seront pas définis.

Autorisations

hid

Types

DeviceFilter

Propriétés

  • productId

    numéro facultatif

    ID produit de l'appareil, vérifié uniquement si l'ID du fournisseur correspond.

  • utilisation

    numéro facultatif

    Identifiant d'utilisation HID, vérifié uniquement si la page d'utilisation HID correspond.

  • usagePage

    numéro facultatif

    Identifiant de page d'utilisation HID.

  • vendorId

    numéro facultatif

    ID du fournisseur de l'appareil.

GetDevicesOptions

Propriétés

  • filtres

    DeviceFilter[] facultatif

    Un appareil correspondant à un filtre donné est renvoyé. Une liste de filtres vide affichera tous les appareils pour lesquels l'application est autorisée.

  • productId

    numéro facultatif

    Obsolète

    Équivaut à définir DeviceFilter.productId.

  • vendorId

    numéro facultatif

    Obsolète

    Équivaut à définir DeviceFilter.vendorId.

HidCollectionInfo

Propriétés

  • reportIds

    nombre[]

    ID de rapport qui appartiennent à la collection et à ses enfants.

  • utilisation

    number

    Identifiant d'utilisation défini par la page.

  • usagePage

    number

    Identifiant de page d'utilisation HID.

HidConnectInfo

Propriétés

  • connectionId

    number

    ID opaque permettant d'identifier cette connexion dans toutes les autres fonctions.

HidDeviceInfo

Propriétés

  • collections

    Collections de premier niveau issues des descripteurs de rapport de cet appareil.

  • deviceId

    number

    ID d'appareil opaque.

  • maxFeatureReportSize

    number

    Taille maximale du rapport sur les fonctionnalités de la collection de premier niveau.

  • maxInputReportSize

    number

    Taille maximale du rapport d'entrée pour la collection de premier niveau.

  • maxOutputReportSize

    number

    Taille maximale du rapport de sortie pour la collection de premier niveau.

  • productId

    number

    ID produit.

  • productName

    chaîne

    Chrome 46 ou version ultérieure

    Nom du produit lu sur l'appareil, s'il est disponible.

  • reportDescriptor

    ArrayBuffer

    Descripteur de rapport brut sur l'appareil (non disponible sous Windows).

  • serialNumber

    chaîne

    Chrome 46 ou version ultérieure

    Numéro de série lu sur l'appareil, le cas échéant.

  • vendorId

    number

    ID du fournisseur.

Méthodes

connect()

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

Ouvrez une connexion à un périphérique HID pour communiquer.

Paramètres

Renvoie

  • Chrome 117 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

disconnect()

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

Déconnectez-vous d'un appareil. Vous pouvez appeler des opérations sur un appareil après l'avoir appelé, mais cela n'a aucun effet.

Paramètres

  • connectionId

    number

    connectionId renvoyé par connect.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 117 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getDevices()

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

Énumérer les appareils HID connectés.

Paramètres

  • Propriétés à rechercher sur les appareils cibles.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (devices: HidDeviceInfo[])=>void

Renvoie

  • Promise<HidDeviceInfo[]>

    Chrome 117 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

receive()

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

Recevoir le rapport d'entrée suivant de l'appareil

Paramètres

  • connectionId

    number

    connectionId renvoyé par connect.

  • rappel

    function

    Le paramètre callback se présente comme suit :

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

    • reportId

      number

      ID du rapport ou 0 si aucun n'est défini.

    • data

      ArrayBuffer

      Les données du rapport et le préfixe de l'ID de rapport (le cas échéant) sont supprimés.

receiveFeatureReport()

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

Demandez un rapport sur les fonctionnalités de l'appareil.

Paramètres

  • connectionId

    number

    connectionId renvoyé par connect.

  • reportId

    number

    ID du rapport, ou 0 dans le cas contraire.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (data: ArrayBuffer)=>void

    • data

      ArrayBuffer

      Données du rapport, y compris un préfixe d'ID de rapport si l'appareil en envoie un.

Renvoie

  • Promise<ArrayBuffer>

    Chrome 117 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

send()

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

Envoyer un rapport de sortie à l'appareil

Remarque:N'incluez pas de préfixe d'ID de rapport dans data. Elle sera ajoutée si nécessaire.

Paramètres

  • connectionId

    number

    connectionId renvoyé par connect.

  • reportId

    number

    ID de rapport à utiliser, ou 0 dans le cas contraire.

  • data

    ArrayBuffer

    Données du rapport.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 117 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

sendFeatureReport()

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

Envoyer un rapport sur les fonctionnalités à l'appareil

Remarque:N'incluez pas de préfixe d'ID de rapport dans data. Elle sera ajoutée si nécessaire.

Paramètres

  • connectionId

    number

    connectionId renvoyé par connect.

  • reportId

    number

    ID de rapport à utiliser, ou 0 dans le cas contraire.

  • data

    ArrayBuffer

    Données du rapport.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 117 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

Événements

onDeviceAdded

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

Événement généré lorsqu'un appareil est ajouté au système. Les événements ne sont diffusés qu'auprès des applications et des extensions autorisées à accéder à l'appareil. L'autorisation peut avoir été accordée au moment de l'installation ou lorsque l'utilisateur a accepté une autorisation facultative (voir permissions.request).

Paramètres

onDeviceRemoved

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

Événement généré lorsqu'un appareil est supprimé du système. Consultez la section onDeviceAdded pour connaître les événements qui sont diffusés.

Paramètres

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (deviceId: number)=>void

    • deviceId

      number