我有一台运行Android Froyo 2.2的Archos a28互联网平板电脑。我有一个HID输入类设备,我想在Android上工作。平板电脑本身已经能够开箱即用地处理鼠标和USB闪存盘。
我想用带有a28的USB设备。这是一个定制设计的设备。我需要能够从设备读取和写入原始USB输入和输出报告。
我怎样才能做到这一点?我听说有可能创建一个模块来执行此操作。
答案 0 :(得分:1)
基本上你需要做两件事:
首先,您需要使用Linux自定义USB设备。最终,linux底层的平板电脑上的Android堆栈。但首先,您可能希望将其与桌面Linux配合使用,以便更容易进行交互式实验。可能这将涉及加载甚至修改内核驱动程序,并可能设置规则以使其自动加载。一旦你有了这个,记录你做了什么,并做了Android平板电脑的Linux等效。这几乎肯定需要root。在android上下文中,在连接上自动加载驱动程序的方法可能不同,但驱动程序本身基本相同,只针对相应的内核进行编译。
其次,您需要使设备可用于应用程序。如果您只希望将其用于自定义程序,则可以通过直接与设备文件交互或在/ proc或/ sys中创建内容来实现此目的。有争议的是,这些文件必须是世界可访问的,或者您必须将另一个特殊的组ID / android权限对修补到堆栈中,并让该组拥有该文件,以使其可用于具有该android权限的应用程序。一种更复杂的方法是编写一个管理设备的低级服务,并通过常用的基于绑定的android服务通信机制将其暴露给Android应用程序。