我正在尝试让我的三星 Galaxy gt-i8530 手机读取 USB 设备(鼠标、随身碟、键盘)。它具有与 Galaxy s 3 mini 相同的 SoC,并且 mini 支持 OTG。我的目标不是创建一个应用程序,而是简单地打开 USB 主机模式,以便手机可以挂载和读取这些 USB 设备的文件。手机已root,安装了busybox并在4.1.2上运行。我试图找出丢失的文件,以便手机可以检测到这些 USB 设备。一旦我用合适的 otg 电缆插入 USB 随身碟、鼠标或键盘(低于 200mA),什么都不会发生。我还尝试了有源 USB 集线器,但仍然无法识别。
以下是根目录中已经存在的文件:
- /storage(未设置权限)和 /mout(权限 rwxrwxrwx)中的 UsbDriveA-F 文件夹
- 等中的vold.fstab,将命令安装到UsBDriveA-F
- etc/permissions 中的 android.hardware.usb.host.xml 权限
- etc/permissions 中的 android.hardware.usb.accessory.xml
- 手持核心硬件.xml 包括 android.hardware.usb.host
- 系统/lib中的usbhost.so
- /etc/udev/rules.d 中的 51-android.rules(最初是缺失的,所以我创建了它并添加了 SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="插件开发"
现在查看http://developer.android.com/reference/android/hardware/usb/package-summary.html我可以看到除了已经存在的
- etc/permissions 中的 android.hardware.usb.host.xml 权限
- etc/permissions 中的 android.hardware.usb.accessory.xml
似乎这些类:UsbConstants、UsbDevice、UsbDeviceConnection、UsbEndpoint、UsbInterface、UsbManager、UsbRequest 在 etc/permissions 中不存在。同样在 /lib/modules 中没有 usb-storage.ko 文件
这使我得出的结论是,由于这些缺少的类和缺少的 .ko 模块(除非这些文件可以在另一个根文件夹中找到)USB 主机模式无法在我的手机上运行。我对么?还是我错过了其他东西?谢谢