chrome.hid

Açıklama

Bağlı HID cihazlarıyla etkileşim kurmak için chrome.hid API'sini kullanın. Bu API, bir uygulamanın bağlamı içinden HID işlemlerine erişim sağlar. Uygulamalar, bu API'yi kullanarak donanım cihazları için sürücü işlevi görebilir. Bu API tarafından oluşturulan hatalar, runtime.lastError ayarlanarak ve işlevin normal geri çağırma işlevi yürütülerek bildirilir. Bu durumda, geri çağırmanın normal parametreleri tanımlanmaz.

İzinler

hid

Türler

DeviceFilter

Özellikler

  • productId

    number isteğe bağlı

    Cihaz ürün kimliği, yalnızca satıcı kimliği eşleşirse kontrol edilir.

  • kullanım

    number isteğe bağlı

    HID kullanım tanımlayıcısı, yalnızca HID kullanım sayfası eşleşirse kontrol edilir.

  • usagePage

    number isteğe bağlı

    HID kullanım sayfası tanımlayıcısı.

  • vendorId

    number isteğe bağlı

    Cihaz tedarikçi kimliği.

GetDevicesOptions

Özellikler

  • filtreler

    DeviceFilter[] isteğe bağlı

    Belirtilen filtrelerden herhangi biriyle eşleşen bir cihaz döndürülür. Boş bir filtre listesi, uygulamanın izin aldığı tüm cihazları döndürür.

  • productId

    number isteğe bağlı

    Kullanımdan kaldırıldı

    DeviceFilter.productId ayarıyla aynıdır.

  • vendorId

    number isteğe bağlı

    Kullanımdan kaldırıldı

    DeviceFilter.vendorId ayarıyla aynıdır.

HidCollectionInfo

Özellikler

  • reportIds

    number[]

    Koleksiyona ve alt öğelerine ait rapor kimlikleri.

  • kullanım

    sayı

    Sayfa tarafından tanımlanan kullanım tanımlayıcısı.

  • usagePage

    sayı

    HID kullanım sayfası tanımlayıcısı.

HidConnectInfo

Özellikler

  • connectionId

    sayı

    Bu bağlantıyı diğer tüm işlevlerde tanımlamak için kullanılan opak kimlik.

HidDeviceInfo

Özellikler

  • koleksiyonlar

    Bu cihazın rapor tanımlayıcılarından üst düzey koleksiyonlar.

  • deviceId

    sayı

    Belirsiz cihaz kimliği.

  • maxFeatureReportSize

    sayı

    Üst düzey koleksiyonun maksimum tanıtım raporu boyutu.

  • maxInputReportSize

    sayı

    Üst düzey koleksiyonun maksimum giriş raporu boyutu.

  • maxOutputReportSize

    sayı

    Üst düzey koleksiyonun maksimum çıkış raporu boyutu.

  • productId

    sayı

    Ürün kimliği.

  • productName

    dize

    Chrome 46+

    Cihazdan okunan ürün adı (varsa).

  • reportDescriptor

    ArrayBuffer

    Ham cihaz raporu tanımlayıcısı (Windows'ta kullanılamaz).

  • serialNumber

    dize

    Chrome 46+

    Varsa cihazdan okunan seri numarası.

  • vendorId

    sayı

    Tedarikçi kimliği.

Yöntemler

connect()

Taahhüt
chrome.hid.connect(
  deviceId: number,
  callback?: function,
)
: Promise<HidConnectInfo>

İletişim için bir HID cihazıyla bağlantı açma.

Parametreler

İadeler

  • Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

disconnect()

Taahhüt
chrome.hid.disconnect(
  connectionId: number,
  callback?: function,
)
: Promise<void>

Cihazla bağlantıyı kesme Bu çağrıldıktan sonra bir cihazda işlem çağrılması güvenlidir ancak herhangi bir etkisi olmaz.

Parametreler

  • connectionId

    sayı

    connect tarafından döndürülen connectionId.

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    () => void

İadeler

  • Promise<void>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

getDevices()

Taahhüt
chrome.hid.getDevices(
  options: GetDevicesOptions,
  callback?: function,
)
: Promise<HidDeviceInfo[]>

Bağlı HID cihazlarını listeleme

Parametreler

İadeler

  • Promise<HidDeviceInfo[]>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

receive()

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

Cihazdan bir sonraki giriş raporunu alır.

Parametreler

  • connectionId

    sayı

    connect tarafından döndürülen connectionId.

  • callback

    işlev

    callback parametresi şu şekilde görünür:

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

    • reportId

      sayı

      Rapor kimliği veya yoksa 0.

    • veri

      ArrayBuffer

      Raporlama verileri ve rapor kimliği öneki (varsa) kaldırılır.

receiveFeatureReport()

Taahhüt
chrome.hid.receiveFeatureReport(
  connectionId: number,
  reportId: number,
  callback?: function,
)
: Promise<ArrayBuffer>

Cihazdan özellik raporu isteyin.

Parametreler

  • connectionId

    sayı

    connect tarafından döndürülen connectionId.

  • reportId

    sayı

    Rapor kimliği veya yoksa 0.

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    (data: ArrayBuffer) => void

    • veri

      ArrayBuffer

      Cihaz tarafından gönderilmişse rapor kimliği öneki de dahil olmak üzere raporlama verileri.

İadeler

  • Promise<ArrayBuffer>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

send()

Taahhüt
chrome.hid.send(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<void>

Cihaza bir çıkış raporu gönderir.

Not: data alanına rapor kimliği öneki eklemeyin. Gerekirse eklenir.

Parametreler

  • connectionId

    sayı

    connect tarafından döndürülen connectionId.

  • reportId

    sayı

    Kullanılacak rapor kimliği veya yoksa 0.

  • veri

    ArrayBuffer

    Raporlama verileri.

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    () => void

İadeler

  • Promise<void>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

sendFeatureReport()

Taahhüt
chrome.hid.sendFeatureReport(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<void>

Cihaza bir özellik raporu gönderin.

Not: data alanına rapor kimliği öneki eklemeyin. Gerekirse eklenir.

Parametreler

  • connectionId

    sayı

    connect tarafından döndürülen connectionId.

  • reportId

    sayı

    Kullanılacak rapor kimliği veya yoksa 0.

  • veri

    ArrayBuffer

    Raporlama verileri.

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    () => void

İadeler

  • Promise<void>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

Etkinlikler

onDeviceAdded

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

Sisteme bir cihaz eklendiğinde oluşturulan etkinlik. Etkinlikler yalnızca cihaza erişim izni olan uygulamalara ve uzantılara yayınlanır. İzin, yükleme sırasında veya kullanıcı isteğe bağlı bir izni kabul ettiğinde verilmiş olabilir (permissions.request bölümüne bakın).

Parametreler

onDeviceRemoved

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

Bir cihaz sistemden kaldırıldığında oluşturulan etkinlik. Hangi etkinliklerin yayınlandığını görmek için onDeviceAdded bölümüne bakın.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (deviceId: number) => void

    • deviceId

      sayı