chrome.hid

설명

chrome.hid API를 사용하여 연결된 HID 기기와 상호작용합니다. 이 API는 앱 컨텍스트 내에서 HID 작업에 대한 액세스를 제공합니다. 이 API를 사용하면 앱이 하드웨어 기기용 드라이버로 작동할 수 있습니다. 이 API에서 생성된 오류는 runtime.lastError를 설정하고 함수의 일반 콜백을 실행하여 보고됩니다. 이 경우 콜백의 일반 매개변수는 정의되지 않습니다.

권한

hid

유형

DeviceFilter

속성

  • productId

    숫자 선택사항

    기기 제품 ID, 공급업체 ID가 일치하는 경우에만 선택

  • 사용량

    숫자 선택사항

    HID 사용 식별자로, HID 사용 페이지가 일치하는 경우에만 선택됩니다.

  • usagePage

    숫자 선택사항

    HID 사용 페이지 식별자입니다.

  • vendorId

    숫자 선택사항

    기기 공급업체 ID

GetDevicesOptions

속성

  • 필터

    DeviceFilter[] 선택사항

    지정된 필터와 일치하는 기기가 반환됩니다. 빈 필터 목록은 앱에 권한이 있는 모든 기기를 반환합니다.

  • productId

    숫자 선택사항

    <ph type="x-smartling-placeholder"></ph> 지원 중단됨

    설정 DeviceFilter.productId과 같습니다.

  • vendorId

    숫자 선택사항

    <ph type="x-smartling-placeholder"></ph> 지원 중단됨

    설정 DeviceFilter.vendorId과 같습니다.

HidCollectionInfo

속성

  • reportIds

    숫자[]

    컬렉션과 그 하위 요소에 속하는 보고서 ID입니다.

  • 사용량

    숫자

    페이지에서 정의한 사용 식별자입니다.

  • usagePage

    숫자

    HID 사용 페이지 식별자입니다.

HidConnectInfo

속성

  • connectionId

    숫자

    다른 모든 함수에서 이 연결을 식별하는 데 사용되는 불투명 ID입니다.

HidDeviceInfo

속성

  • 컬렉션

    이 기기의 보고서 설명자의 최상위 컬렉션입니다.

  • deviceId

    숫자

    불투명한 기기 ID입니다.

  • maxFeatureReportSize

    숫자

    최상위 컬렉션의 최대 기능 보고서 크기입니다.

  • maxInputReportSize

    숫자

    최상위 컬렉션의 최대 입력 보고서 크기입니다.

  • maxOutputReportSize

    숫자

    최상위 컬렉션의 최대 출력 보고서 크기입니다.

  • productId

    숫자

    제품 ID입니다.

  • productName

    문자열

    Chrome 46 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    가능한 경우 기기에서 읽은 제품 이름입니다.

  • reportDescriptor

    배열 버퍼

    원본 기기 보고서 설명어 (Windows에서는 사용할 수 없음)

  • serialNumber

    문자열

    Chrome 46 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    가능한 경우 기기에서 읽은 일련번호입니다.

  • vendorId

    숫자

    공급업체 ID.

메서드

connect()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.hid.connect(
  deviceId: number,
  callback?: function,
)

통신을 위해 HID 기기 연결을 엽니다.

매개변수

반환 값

  • Promise&lt;HidConnectInfo&gt;

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

disconnect()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.hid.disconnect(
  connectionId: number,
  callback?: function,
)

기기에서 연결을 해제합니다. 이 메서드를 호출한 후 기기에서 작업을 호출하는 것은 안전하지만 효과가 없습니다.

매개변수

  • connectionId

    숫자

    connect에서 반환한 connectionId입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

getDevices()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.hid.getDevices(
  options: GetDevicesOptions,
  callback?: function,
)

연결된 HID 기기를 열거합니다.

매개변수

반환 값

  • Promise&lt;HidDeviceInfo[]&gt;

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

receive()

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

기기에서 다음 입력 보고서를 수신합니다.

매개변수

  • connectionId

    숫자

    connect에서 반환한 connectionId입니다.

  • 콜백

    함수

    callback 매개변수는 다음과 같습니다.

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

    • reportId

      숫자

      보고서 ID 또는 0(없는 경우)

    • 데이터

      배열 버퍼

      보고서 데이터, 보고서 ID 프리픽스 (있는 경우)가 삭제됩니다.

receiveFeatureReport()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.hid.receiveFeatureReport(
  connectionId: number,
  reportId: number,
  callback?: function,
)

기기에서 기능 보고서를 요청합니다.

매개변수

  • connectionId

    숫자

    connect에서 반환한 connectionId입니다.

  • reportId

    숫자

    보고서 ID 또는 없는 경우 0

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (data: ArrayBuffer) => void

    • 데이터

      배열 버퍼

      보고서 ID 프리픽스를 포함한 보고서 데이터(기기에서 전송하는 경우)

반환 값

  • <ArrayBuffer> 프로미스

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

send()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.hid.send(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)

기기로 출력 보고서를 전송합니다.

참고: data에 보고서 ID 프리픽스를 포함하지 마세요. 필요한 경우 추가됩니다.

매개변수

  • connectionId

    숫자

    connect에서 반환한 connectionId입니다.

  • reportId

    숫자

    사용할 보고서 ID이거나 없는 경우 0입니다.

  • 데이터

    배열 버퍼

    보고서 데이터입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

sendFeatureReport()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.hid.sendFeatureReport(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)

기기에 기능 보고서 전송

참고: data에 보고서 ID 프리픽스를 포함하지 마세요. 필요한 경우 추가됩니다.

매개변수

  • connectionId

    숫자

    connect에서 반환한 connectionId입니다.

  • reportId

    숫자

    사용할 보고서 ID이거나 없는 경우 0입니다.

  • 데이터

    배열 버퍼

    보고서 데이터입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

이벤트

onDeviceAdded

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

기기가 시스템에 추가될 때 생성되는 이벤트입니다. 이벤트는 기기 액세스 권한이 있는 앱과 확장 프로그램으로만 브로드캐스트됩니다. 설치 시 또는 사용자가 선택적 권한을 수락했을 때 권한이 부여되었을 수 있습니다 (permissions.request 참고).

매개변수

onDeviceRemoved

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

시스템에서 기기가 삭제될 때 생성되는 이벤트입니다. 어떤 이벤트가 전송되는지 onDeviceAdded를 참고하세요.

매개변수

  • 콜백

    함수

    callback 매개변수는 다음과 같습니다.

    (deviceId: number) => void

    • deviceId

      숫자