Descrizione
Usa l'API chrome.hid
per interagire con i dispositivi HID connessi. Questa API consente di accedere alle operazioni HID dal contesto di un'app. Grazie all'API, le app possono fungere da driver per dispositivi hardware. Gli errori generati da questa API vengono segnalati impostando runtime.lastError
ed eseguendo il callback normale della funzione. In questo caso, i parametri normali del callback non saranno definiti.
Autorizzazioni
hid
Tipi
DeviceFilter
Proprietà
-
productId
numero facoltativo
ID prodotto dispositivo, selezionato solo se l'ID fornitore corrisponde.
-
utilizzo
numero facoltativo
Identificatore di utilizzo HID, selezionato solo se la pagina Utilizzo di HID corrisponde.
-
usagePage
numero facoltativo
Identificatore della pagina di utilizzo dell'HID.
-
vendorId
numero facoltativo
ID del fornitore del dispositivo.
GetDevicesOptions
Proprietà
-
filtri
DeviceFilter[] facoltativo
Verrà restituito un dispositivo corrispondente a un determinato filtro. Un elenco di filtri vuoto restituirà tutti i dispositivi per i quali l'app è autorizzata.
-
productId
numero facoltativo
DeprecatoEquivale all'impostazione
DeviceFilter.productId
. -
vendorId
numero facoltativo
DeprecatoEquivale all'impostazione
DeviceFilter.vendorId
.
HidCollectionInfo
Proprietà
-
reportIds
numero[]
ID report che appartengono alla raccolta e ai relativi ID secondari.
-
utilizzo
numero
Identificatore di utilizzo definito dalla pagina.
-
usagePage
numero
Identificatore della pagina di utilizzo dell'HID.
HidConnectInfo
Proprietà
-
connectionId
numero
L'ID opaco utilizzato per identificare questa connessione in tutte le altre funzioni.
HidDeviceInfo
Proprietà
-
raccolte
Raccolte di primo livello dei descrittori dei report di questo dispositivo.
-
deviceId
numero
ID dispositivo opaco.
-
maxFeatureReportSize
numero
Dimensioni massime del report sugli elementi della raccolta di primo livello.
-
maxInputReportSize
numero
Dimensioni massime del report di input della raccolta di primo livello.
-
maxOutputReportSize
numero
Dimensione massima del report di output della raccolta di primo livello.
-
productId
numero
ID prodotto.
-
productName
stringa
Chrome 46 e versioni successiveIl nome del prodotto letto dal dispositivo, se disponibile.
-
reportDescriptor
ArrayBuffer
Descrittore del report non elaborato sul dispositivo (non disponibile su Windows).
-
serialNumber
stringa
Chrome 46 e versioni successiveIl numero di serie letto dal dispositivo, se disponibile.
-
vendorId
numero
ID fornitore.
Metodi
connect()
chrome.hid.connect(
deviceId: number,
callback?: function,
)
Apri una connessione a un dispositivo HID per la comunicazione.
Parametri
-
deviceId
numero
Il
HidDeviceInfo.deviceId
del dispositivo da aprire. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(connection: HidConnectInfo) => void
-
connessione
-
Ritorni
-
Promise<HidConnectInfo>
Chrome 117 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
disconnect()
chrome.hid.disconnect(
connectionId: number,
callback?: function,
)
Disconnettersi da un dispositivo. La chiamata alle operazioni su un dispositivo dopo la chiamata è sicura, ma non ha alcun effetto.
Parametri
-
connectionId
numero
Il valore
connectionId
restituito daconnect
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Ritorni
-
Promise<void>
Chrome 117 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
getDevices()
chrome.hid.getDevices(
options: GetDevicesOptions,
callback?: function,
)
Enumera i dispositivi HID connessi.
Parametri
-
opzioni
Le proprietà da cercare sui dispositivi target.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(devices: HidDeviceInfo[]) => void
-
dispositivi
-
Ritorni
-
Promise<HidDeviceInfo[]>
Chrome 117 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
receive()
chrome.hid.receive(
connectionId: number,
callback: function,
)
Ricevi il successivo report di input dal dispositivo.
Parametri
-
connectionId
numero
Il valore
connectionId
restituito daconnect
. -
callback
funzione
Il parametro
callback
ha il seguente aspetto:(reportId: number, data: ArrayBuffer) => void
-
reportId
numero
L'ID report o
0
se nessuno. -
dati
ArrayBuffer
I dati del report, il prefisso dell'ID report (se presente), vengono rimossi.
-
receiveFeatureReport()
chrome.hid.receiveFeatureReport(
connectionId: number,
reportId: number,
callback?: function,
)
Richiedi un report sulla funzionalità dal dispositivo.
Parametri
-
connectionId
numero
Il valore
connectionId
restituito daconnect
. -
reportId
numero
L'ID report o
0
se nessuno. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(data: ArrayBuffer) => void
-
dati
ArrayBuffer
I dati del report, incluso un prefisso dell'ID report se il dispositivo ne invia uno.
-
Ritorni
-
Promise<ArrayBuffer>
Chrome 117 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
send()
chrome.hid.send(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
)
Invia un report di output al dispositivo.
Nota: non includere il prefisso di un ID report in data
. Verrà aggiunto se necessario.
Parametri
-
connectionId
numero
Il valore
connectionId
restituito daconnect
. -
reportId
numero
L'ID report da utilizzare oppure
0
se non è presente. -
dati
ArrayBuffer
I dati del report.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Ritorni
-
Promise<void>
Chrome 117 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
sendFeatureReport()
chrome.hid.sendFeatureReport(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
)
Invia un report sulla funzionalità al dispositivo.
Nota: non includere il prefisso di un ID report in data
. Verrà aggiunto se necessario.
Parametri
-
connectionId
numero
Il valore
connectionId
restituito daconnect
. -
reportId
numero
L'ID report da utilizzare oppure
0
se non è presente. -
dati
ArrayBuffer
I dati del report.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Ritorni
-
Promise<void>
Chrome 117 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
Eventi
onDeviceAdded
chrome.hid.onDeviceAdded.addListener(
callback: function,
)
Evento generato quando un dispositivo viene aggiunto al sistema. Gli eventi vengono trasmessi solo alle app e alle estensioni che dispongono dell'autorizzazione per accedere al dispositivo. L'autorizzazione potrebbe essere stata concessa al momento dell'installazione o quando l'utente ha accettato un'autorizzazione facoltativa (vedi permissions.request
).
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(device: HidDeviceInfo) => void
-
dispositivo
-
onDeviceRemoved
chrome.hid.onDeviceRemoved.addListener(
callback: function,
)
Evento generato quando un dispositivo viene rimosso dal sistema. Consulta la sezione onDeviceAdded
per sapere quali eventi vengono pubblicati.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(deviceId: number) => void
-
deviceId
numero
-