在android上读取/写入usb隐藏设备(带有一个接口类型的键盘和鼠标)

时间:2014-10-14 07:44:05

标签: android keyboard usb hid


我有一个项目,我必须在Android应用程序和USB设备之间进行通信。该设备具有带有不同接口的hid描述符(5)。有一个接口类型“键盘”和一个接口类型“鼠标”,其他接口是未定义类型。我必须从/向设备读取和写入数据。我已经看到USB Host API可以打开与USB设备的连接,但我在android hid设备列表中看不到该设备。我已经看到“USBManager.getDeviceList”不会一直返回键盘。我认为这是因为该设备仍然有一个句柄打开。我该如何防止这个句柄?如何打开让我的设备打开UsbDeviceConnection?

有关信息:
- 当我插入USB设备时:
- 它被识别为键盘(我可以使用键并在界面上导航)
- 我在/ dev / input
上看到了新的文件事件 - 我使用android 4.2.2
- dmesg:

  

输入:XXX USB HID SENSORS为/devices/pci0000:00/0000:00:10.1/usb8/8-1/8-1:1.0/input/input29
  hid-generic 0003:2804:0100.0014:输入,hidraw3:USB HID v1.10键盘[XXX USB HID SENSORS] on usb-0000:00:10.1-1 / input0
  输入:XXX USB HID传感器> /devices/pci0000:00/0000:00:10.1/usb8/8-1/8-1:1.1/input/input30
  hid-generic 0003:2804:0100.0015:输入,hidraw4:USB HID v1.10设备[XXX USB HID SENSORS]在usb-0000:00:10.1-1 / input1
   hid-generic 0003:2804:0100.0016:hiddev0,hidraw5:usb-0000:00:10.1-1 / input2的USB HID v1.10设备[XXX USB HID SENSORS]   输入:XXX USB HID SENSORS为/devices/pci0000:00/0000:00:10.1/usb8/8-1/8-1:1.3/input/input31
  hid-generic 0003:2804:0100.0017:输入,hidraw6:USB HID v1.10鼠标[XXX USB HID SENSORS] on usb-0000:00:10.1-1 / input3
  hid-generic 0003:2804:0100.0018:hiddev0,hidraw7:USB HID v1.10设备[XXX USB HID SENSORS] on usb-0000:00:10.1-1 / input4

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我认为linux hid驱动程序挂钩到HID类,这会阻止您从应用程序层访问设备。

为什么不看看Android Open Accessory Protocol 2.0。也许,这可以帮助你进行冒险。