2015-02-25 1 views
3

У меня есть устройство USB HID, подключенное к компьютеру под управлением Windows 8.1. Моя цель - написать приложение Chrome, которое ведет переговоры с этим устройством и анализирует его ввод. Я пробовал два разных подхода:Google Chrome chrome.usb/chrome.hid заблокировано устройство

  • chrome.usb.findDevices(), который дает разрешение отказано
  • chrome.hid.getDevices(), chrome.hid.connect(), chrome.hid.receive (), который, по-видимому, подключается к устройству, но браузер не получает вход

Устройство является устройством чтения/записи NFC и в настоящий момент всякий раз, когда я сканирую что-то, устройство работает как клавиатура. Я знаю, что ОС блокирует HID-устройства для обеспечения безопасности среди других, но есть ли способ разрешить другим приложениям подключаться к этим устройствам (от Chrome в этом случае)?

Вот мой манифест:

"permissions" : [ 
    "usb", 
    "hid", 
    { 
     "usbDevices": [ 
      { 
       "vendorId": 2049, 
       "productId": 5 
      } 
     ] 
    } 
] 

ответ

0

Он должен в связи с правами, установленными в манифесте. Иногда VendorID и PRODUCTID перепутаны, поэтому его лучше объявить и как:

"usbDevices":[ 
    { "vendorId": 2049, "productId": 5 } 
    { "vendorId": 5, "productId": 2049 } 
] 

Вы проверили на этом проекте? https://github.com/GoogleChrome/chrome-app-samples/tree/master/samples/hid

+0

Спасибо, но это не сработает. Уже пробовал пример приложения HID: устройство распознано, я могу подключиться к нему, но нет ввода. –

1

Все, что действует как клавиатура или мышь, явно запрещено доступным через API-интерфейс chrome.hid. * И, как правило, перехватывается ОС.

См. Комментарии к API design document и документам Chrome USB Device.