用usbManager android无法看到鼠标和键盘设备
我在一个项目上工作,我需要在服务上获取键盘和鼠标的数据。 我也必须能够发送数据到我的设备隐藏。 要做到这一点,我想使用USB主机模式。 当我得到设备列表时,我可以看到海量存储空间,但没有鼠标和键盘。 搜索后,我看到usbManager不返回鼠标和键盘设备。 我试图改变权限(在/系统/ etc /权限)whitout成功)。 我已经运行了应用USB设备信息,并且我在linux设备上看到了鼠标和键盘,而不是在Android设备上。
我使用android 4.2.2。 是否有可能获得与USB主机鼠标(和键盘)的隐藏数据,或者我必须找到其他方式?
感谢您的帮助
您可以通过InputManager检测鼠标/键盘:
if(Build.VERSION.SDK_INT > 15) {
InputManager inptmgr = (InputManager)getSystemService(INPUT_SERVICE);
int[] inputs = inptmgr.getInputDeviceIds();
for(int i = 0;i<inputs.length;i++) {
String devicename = inptmgr.getInputDevice(inputs[i]).getName();
if(devicename.toLowerCase().contains("mouse")) {
} else if(devicename.toLowerCase().contains("keyboard")) {
}
}
}
至于其他您可能希望收集的数据,您可以浏览getInputDevice()
下的所有其他方法,例如getVendorId()
, getProductId()
, getMotionRange()
, getKeyCharacterMap()
等。
希望这可以帮助!
如果您已经可以使用HID设备进行输入,它将作为输入设备(键盘或鼠标)工作,并且无需将其作为USB设备访问。 您可以简单地通过诸如OnKeyListener等侦听器来捕获设备的输入。
链接地址: http://www.djcxy.com/p/58315.html上一篇: Can't see mouse and keyboard device with usbManager android