Deskripsi
Gunakan chrome.hid
API untuk berinteraksi dengan perangkat HID yang terhubung. API ini menyediakan akses ke operasi HID dari dalam konteks aplikasi. Dengan menggunakan API ini, aplikasi dapat berfungsi sebagai driver untuk perangkat hardware. Error yang dihasilkan oleh API ini dilaporkan dengan menyetel runtime.lastError
dan mengeksekusi callback reguler fungsi. Parameter reguler callback tidak akan ditentukan dalam kasus ini.
Izin
hid
Jenis
DeviceFilter
Properti
-
productId
nomor opsional
ID produk perangkat, hanya diperiksa jika ID vendor cocok.
-
penggunaan
nomor opsional
ID penggunaan HID, hanya diperiksa jika halaman penggunaan HID cocok.
-
usagePage
nomor opsional
ID halaman penggunaan HID.
-
vendorId
nomor opsional
ID vendor perangkat.
GetDevicesOptions
Properti
-
filter
DeviceFilter[] opsional
Perangkat yang cocok dengan filter tertentu akan ditampilkan. Daftar filter kosong akan menampilkan semua perangkat yang memiliki izin aplikasi.
-
productId
nomor opsional
Tidak digunakan lagiSetara dengan menyetel
DeviceFilter.productId
. -
vendorId
nomor opsional
Tidak digunakan lagiSetara dengan menyetel
DeviceFilter.vendorId
.
HidCollectionInfo
Properti
-
reportIds
number[]
ID laporan yang termasuk dalam koleksi dan turunannya.
-
penggunaan
angka
ID penggunaan yang ditentukan halaman.
-
usagePage
angka
ID halaman penggunaan HID.
HidConnectInfo
Properti
-
connectionId
angka
ID buram yang digunakan untuk mengidentifikasi koneksi ini di semua fungsi lainnya.
HidDeviceInfo
Properti
-
koleksi
Kumpulan tingkat teratas dari deskriptor laporan perangkat ini.
-
deviceId
angka
ID perangkat yang tidak transparan.
-
maxFeatureReportSize
angka
Ukuran laporan fitur maksimum koleksi tingkat teratas.
-
maxInputReportSize
angka
Ukuran laporan input maksimum koleksi tingkat teratas.
-
maxOutputReportSize
angka
Ukuran laporan output maksimum koleksi tingkat teratas.
-
productId
angka
ID Produk.
-
productName
string
Chrome 46+Nama produk yang dibaca dari perangkat, jika tersedia.
-
reportDescriptor
ArrayBuffer
Deskriptor laporan perangkat mentah (tidak tersedia di Windows).
-
serialNumber
string
Chrome 46+Nomor seri yang dibaca dari perangkat, jika tersedia.
-
vendorId
angka
ID Vendor.
Metode
connect()
chrome.hid.connect(
deviceId: number,
callback?: function,
): Promise<HidConnectInfo>
Membuka koneksi ke perangkat HID untuk komunikasi.
Parameter
-
deviceId
angka
HidDeviceInfo.deviceId
perangkat yang akan dibuka. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(connection: HidConnectInfo) => void
-
koneksi
-
Hasil
-
Promise<HidConnectInfo>
Chrome 117+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
disconnect()
chrome.hid.disconnect(
connectionId: number,
callback?: function,
): Promise<void>
Putuskan koneksi dari perangkat. Memanggil operasi di perangkat setelah memanggil ini aman, tetapi tidak berpengaruh.
Parameter
-
connectionId
angka
connectionId
yang ditampilkan olehconnect
. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Chrome 117+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
getDevices()
chrome.hid.getDevices(
options: GetDevicesOptions,
callback?: function,
): Promise<HidDeviceInfo[]>
Mencantumkan perangkat HID yang terhubung.
Parameter
-
opsi
Properti yang akan ditelusuri di perangkat target.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:(devices: HidDeviceInfo[]) => void
-
perangkat
-
Hasil
-
Promise<HidDeviceInfo[]>
Chrome 117+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
receive()
chrome.hid.receive(
connectionId: number,
callback: function,
): void
Menerima laporan input berikutnya dari perangkat.
Parameter
-
connectionId
angka
connectionId
yang ditampilkan olehconnect
. -
callback
fungsi
Parameter
callback
terlihat seperti:(reportId: number, data: ArrayBuffer) => void
-
reportId
angka
ID laporan atau
0
jika tidak ada. -
data
ArrayBuffer
Data laporan, awalan ID laporan (jika ada) akan dihapus.
-
receiveFeatureReport()
chrome.hid.receiveFeatureReport(
connectionId: number,
reportId: number,
callback?: function,
): Promise<ArrayBuffer>
Minta laporan fitur dari perangkat.
Parameter
-
connectionId
angka
connectionId
yang ditampilkan olehconnect
. -
reportId
angka
ID laporan, atau
0
jika tidak ada. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(data: ArrayBuffer) => void
-
data
ArrayBuffer
Data laporan, termasuk awalan ID laporan jika dikirim oleh perangkat.
-
Hasil
-
Promise<ArrayBuffer>
Chrome 117+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
send()
chrome.hid.send(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
): Promise<void>
Mengirim laporan output ke perangkat.
Catatan: Jangan sertakan awalan ID laporan di data
. ID ini akan ditambahkan jika diperlukan.
Parameter
-
connectionId
angka
connectionId
yang ditampilkan olehconnect
. -
reportId
angka
ID laporan yang akan digunakan, atau
0
jika tidak ada. -
data
ArrayBuffer
Data laporan.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Chrome 117+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
sendFeatureReport()
chrome.hid.sendFeatureReport(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
): Promise<void>
Mengirim laporan fitur ke perangkat.
Catatan: Jangan sertakan awalan ID laporan di data
. ID ini akan ditambahkan jika diperlukan.
Parameter
-
connectionId
angka
connectionId
yang ditampilkan olehconnect
. -
reportId
angka
ID laporan yang akan digunakan, atau
0
jika tidak ada. -
data
ArrayBuffer
Data laporan.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Chrome 117+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
Acara
onDeviceAdded
chrome.hid.onDeviceAdded.addListener(
callback: function,
)
Peristiwa yang dihasilkan saat perangkat ditambahkan ke sistem. Peristiwa hanya disiarkan ke aplikasi dan ekstensi yang memiliki izin untuk mengakses perangkat. Izin mungkin telah diberikan pada saat penginstalan atau saat pengguna menyetujui izin opsional (lihat permissions.request
).
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti:(device: HidDeviceInfo) => void
-
perangkat
-
onDeviceRemoved
chrome.hid.onDeviceRemoved.addListener(
callback: function,
)
Peristiwa yang dihasilkan saat perangkat dihapus dari sistem. Lihat onDeviceAdded
untuk mengetahui peristiwa mana yang dikirimkan.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti:(deviceId: number) => void
-
deviceId
angka
-