คำอธิบาย
ใช้ chrome.hid
API เพื่อโต้ตอบกับอุปกรณ์ HID ที่เชื่อมต่อ API นี้ให้สิทธิ์เข้าถึงการดำเนินการ HID จากภายในบริบทของแอป เมื่อใช้ API นี้ แอปต่างๆ จะทำหน้าที่เป็นไดรเวอร์ของอุปกรณ์ฮาร์ดแวร์ได้ ระบบจะรายงานข้อผิดพลาดที่สร้างโดย API นี้โดยการตั้งค่า runtime.lastError
และเรียกใช้ Callback ปกติของฟังก์ชัน พารามิเตอร์ปกติของ Callback จะไม่ได้กำหนดในกรณีนี้
สิทธิ์
hid
ประเภท
DeviceFilter
พร็อพเพอร์ตี้
-
productId
หมายเลข ไม่บังคับ
เลือกรหัสผลิตภัณฑ์ของอุปกรณ์ก็ต่อเมื่อรหัสผู้ให้บริการตรงกันเท่านั้น
-
การใช้งาน
หมายเลข ไม่บังคับ
เลือกตัวระบุการใช้งาน HID เฉพาะเมื่อหน้าการใช้งาน HID ตรงกัน
-
usagePage
หมายเลข ไม่บังคับ
ตัวระบุหน้าการใช้งาน HID
-
vendorId
หมายเลข ไม่บังคับ
รหัสผู้ให้บริการอุปกรณ์
GetDevicesOptions
พร็อพเพอร์ตี้
-
ตัวกรอง
DeviceFilter[] ไม่บังคับ
ระบบจะส่งคืนอุปกรณ์ที่ตรงกับตัวกรองที่ระบุ รายการตัวกรองที่ว่างเปล่าจะแสดงอุปกรณ์ทั้งหมดที่แอปมีสิทธิ์
-
productId
หมายเลข ไม่บังคับ
เลิกใช้งานแล้วเทียบเท่ากับการตั้งค่า
DeviceFilter.productId
-
vendorId
หมายเลข ไม่บังคับ
เลิกใช้งานแล้วเทียบเท่ากับการตั้งค่า
DeviceFilter.vendorId
HidCollectionInfo
พร็อพเพอร์ตี้
-
reportIds
ตัวเลข[]
รหัสรายงานที่เป็นของคอลเล็กชันและคอลเล็กชันย่อย
-
การใช้งาน
ตัวเลข
ตัวระบุการใช้งานที่หน้าเว็บกำหนด
-
usagePage
ตัวเลข
ตัวระบุหน้าการใช้งาน HID
HidConnectInfo
พร็อพเพอร์ตี้
-
connectionId
ตัวเลข
รหัสแบบทึบที่ใช้ในการระบุการเชื่อมต่อนี้ในฟังก์ชันอื่นๆ ทั้งหมด
HidDeviceInfo
พร็อพเพอร์ตี้
-
คอลเล็กชัน
คอลเล็กชันระดับบนสุดจากข้อบ่งชี้รายงานของอุปกรณ์นี้
-
deviceId
ตัวเลข
รหัสอุปกรณ์ทึบแสง
-
maxFeatureReportSize
ตัวเลข
ขนาดรายงานฟีเจอร์สูงสุดของคอลเล็กชันระดับบนสุด
-
maxInputReportSize
ตัวเลข
ขนาดรายงานอินพุตสูงสุดของคอลเล็กชันระดับบนสุด
-
maxOutputReportSize
ตัวเลข
ขนาดรายงานผลลัพธ์สูงสุดของคอลเล็กชันระดับบนสุด
-
productId
ตัวเลข
ID ผลิตภัณฑ์
-
productName
สตริง
Chrome 46 ขึ้นไปอ่านชื่อผลิตภัณฑ์จากอุปกรณ์ หากมี
-
reportDescriptor
อาร์เรย์บัฟเฟอร์
ข้อบ่งชี้รายงานอุปกรณ์ดิบ (ใช้ไม่ได้ใน Windows)
-
serialNumber
สตริง
Chrome 46 ขึ้นไปหมายเลขซีเรียลอ่านจากอุปกรณ์ หากมี
-
vendorId
ตัวเลข
รหัสผู้ให้บริการ
เมธอด
connect()
chrome.hid.connect(
deviceId: number,
callback?: function,
)
เปิดการเชื่อมต่อกับอุปกรณ์ HID เพื่อการสื่อสาร
พารามิเตอร์
-
deviceId
ตัวเลข
HidDeviceInfo.deviceId
ของอุปกรณ์ที่จะเปิด -
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(connection: HidConnectInfo) => void
-
การเชื่อมต่อ
-
การคืนสินค้า
-
Promise<HidConnectInfo>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
disconnect()
chrome.hid.disconnect(
connectionId: number,
callback?: function,
)
ยกเลิกการเชื่อมต่ออุปกรณ์ การเรียกใช้การดำเนินการในอุปกรณ์หลังจากเรียกใช้การดำเนินการนี้ปลอดภัย แต่จะไม่มีผล
พารามิเตอร์
-
connectionId
ตัวเลข
connect
ได้คืนเงินconnectionId
แล้ว -
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำมั่นสัญญา<โมฆะ>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
getDevices()
chrome.hid.getDevices(
options: GetDevicesOptions,
callback?: function,
)
แจกแจงอุปกรณ์ HID ที่เชื่อมต่อ
พารามิเตอร์
-
ตัวเลือก
พร็อพเพอร์ตี้ที่จะค้นหาในอุปกรณ์เป้าหมาย
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(devices: HidDeviceInfo[]) => void
-
อุปกรณ์
-
การคืนสินค้า
-
Promise<HidDeviceInfo[]>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
receive()
chrome.hid.receive(
connectionId: number,
callback: function,
)
รับรายงานอินพุตถัดไปจากอุปกรณ์
พารามิเตอร์
-
connectionId
ตัวเลข
connect
ได้คืนเงินconnectionId
แล้ว -
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(reportId: number, data: ArrayBuffer) => void
-
reportId
ตัวเลข
รหัสรายงานหรือ
0
หากไม่มี -
ข้อมูล
อาร์เรย์บัฟเฟอร์
ข้อมูลรายงานจะนำคำนำหน้ารหัสรายงาน (หากมี) ออก
-
receiveFeatureReport()
chrome.hid.receiveFeatureReport(
connectionId: number,
reportId: number,
callback?: function,
)
ขอรายงานฟีเจอร์จากอุปกรณ์
พารามิเตอร์
-
connectionId
ตัวเลข
connect
ได้คืนเงินconnectionId
แล้ว -
reportId
ตัวเลข
รหัสรายงาน หรือ
0
หากไม่มี -
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(data: ArrayBuffer) => void
-
ข้อมูล
อาร์เรย์บัฟเฟอร์
ข้อมูลรายงาน ซึ่งรวมถึงคำนำหน้ารหัสรายงาน หากอุปกรณ์ส่งข้อมูลดังกล่าวมา
-
การคืนสินค้า
-
สัญญา <ArrayBuffer>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
send()
chrome.hid.send(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
)
ส่งรายงานเอาต์พุตไปยังอุปกรณ์
หมายเหตุ: อย่าใส่คำนำหน้ารหัสรายงานใน data
และจะเพิ่มหากจำเป็น
พารามิเตอร์
-
connectionId
ตัวเลข
connect
ได้คืนเงินconnectionId
แล้ว -
reportId
ตัวเลข
รหัสรายงานที่จะใช้ หรือ
0
หากไม่มี -
ข้อมูล
อาร์เรย์บัฟเฟอร์
ข้อมูลรายงาน
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำมั่นสัญญา<โมฆะ>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
sendFeatureReport()
chrome.hid.sendFeatureReport(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
)
ส่งรายงานฟีเจอร์ไปยังอุปกรณ์
หมายเหตุ: อย่าใส่คำนำหน้ารหัสรายงานใน data
และจะเพิ่มหากจำเป็น
พารามิเตอร์
-
connectionId
ตัวเลข
connect
ได้คืนเงินconnectionId
แล้ว -
reportId
ตัวเลข
รหัสรายงานที่จะใช้ หรือ
0
หากไม่มี -
ข้อมูล
อาร์เรย์บัฟเฟอร์
ข้อมูลรายงาน
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
การคืนสินค้า
-
คำมั่นสัญญา<โมฆะ>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
กิจกรรม
onDeviceAdded
chrome.hid.onDeviceAdded.addListener(
callback: function,
)
เหตุการณ์ที่สร้างขึ้นเมื่อมีการเพิ่มอุปกรณ์ลงในระบบ กิจกรรมจะประกาศไปยังแอปและส่วนขยายที่มีสิทธิ์เข้าถึงอุปกรณ์เท่านั้น อาจมีการให้สิทธิ์ ณ เวลาที่ติดตั้งหรือเมื่อผู้ใช้ยอมรับสิทธิ์ที่ไม่บังคับ (ดู permissions.request
)
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(device: HidDeviceInfo) => void
-
อุปกรณ์
-
onDeviceRemoved
chrome.hid.onDeviceRemoved.addListener(
callback: function,
)
เหตุการณ์ที่สร้างขึ้นเมื่อมีการนำอุปกรณ์ออกจากระบบ ดูเหตุการณ์ที่มีการนำส่งใน onDeviceAdded
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(deviceId: number) => void
-
deviceId
ตัวเลข
-