我有一台运行Android Froyo 2.2的Archos a28互联网平板电脑。我有一个HID输入类设备,我想在Android上工作。平板电脑本身已经能够处理开箱即用的鼠标和USB闪存驱动器。
我想把我的USB设备和a28连接起来。这是一个定制设计的设备。我需要能够读写设备的原始USB输入和输出报告。
我如何才能做到这一点呢?我听说可以创建一个模块来做这件事。
发布于 2011-02-25 02:10:22
本质上,你需要做两件事:
首先,您需要让定制的USB设备与linux一起工作。最终,平板电脑上android堆栈的底层是linux。但首先,您可能想让它在桌面linux上工作,这样更容易进行交互实验。这可能会涉及到加载甚至修改内核驱动程序,可能还会设置自动加载的规则。一旦你准备好了,记录下你做了什么,并为android平板电脑的linux做同样的事情。这几乎肯定需要root用户。在android环境中,在连接时自动加载驱动程序的方法可能不同,但驱动程序本身本质上是相同的,只是针对适当的内核进行了编译。
其次,您需要使设备对应用程序可用。如果您只希望使其可用于自定义程序,则可以通过与设备文件直接交互或在/proc或/sys中创建内容来实现此目的。有争议的是,这些文件要么必须是全球可访问的,要么你必须将另一个特殊的组ID/android权限对修补到堆栈中,并让该组拥有该文件,以使其可供拥有该android权限的应用程序使用。一种更复杂的方法是编写一个管理设备的低级服务,并通过通常基于绑定器的android服务通信机制将其公开给android应用程序。
https://stackoverflow.com/questions/4575455
复制相似问题