【发布时间】:2011-03-25 20:54:09
【问题描述】:
我想用我的安卓手机为我的电视制作遥控器。我打算通过 USB 将我的外部红外设备连接到手机。手机上的应用程序应该进行处理并通过 USB 向红外设备发送命令。是否可以从应用程序显式访问手机的 USB 接口以发送/接收数据?数据将只是简短的二进制字符串。在一种情况下,手机应该是主机,而在另一种情况下,手机应该是客户端。
【问题讨论】:
我想用我的安卓手机为我的电视制作遥控器。我打算通过 USB 将我的外部红外设备连接到手机。手机上的应用程序应该进行处理并通过 USB 向红外设备发送命令。是否可以从应用程序显式访问手机的 USB 接口以发送/接收数据?数据将只是简短的二进制字符串。在一种情况下,手机应该是主机,而在另一种情况下,手机应该是客户端。
【问题讨论】:
为此,我相信您的手机需要USB host driver。虽然这些驱动程序可用于某些设备(请参阅链接),但您需要具有 root 访问权限才能安装它们,这并不容易。例如,here's a description 如何为 Nexus One 安装 USB 主机驱动程序。
鉴于支持 USB 主机的设备很少,似乎很少有关于如何实际访问特定 USB 设备的文档。上面的第二个链接指向 Nexus One 驱动程序,提供了一些稀疏的细节。除此之外,我只能假设您需要为特定设备编写自己的驱动程序,这可能类似于标准Linux USB driver development。 This XDA thread(由 N1 USB 主机驱动程序的作者发起)可能是您能找到的最佳信息来源。
不幸的是,简短的回答是,您想做的事情将非常困难,如果您确实管理它,您肯定无法轻松地分发您的工作。祝你好运!
【讨论】: