如何通过USB连接Android应用程序与PC上的c ++程序

时间:2015-06-25 16:37:58

标签: android c++ stream usb pc

需要一种通过USB在PC上连接Android应用程序与C ++程序的方法,这将允许Android应用程序通过USB向PC上的c ++程序发送恒定的实时数据流(主要是整数值)并随身携带相应地采取行动。我知道通过wifi或蓝牙更容易做到这一点,但我想用USB进行连接。

我已经在网上搜索了类似的问题,尝试了很多代码,但是没有代码对我有用。我非常感谢c ++部分的示例代码,并且它的android对应物允许轻松完成。

4 个答案:

答案 0 :(得分:1)

您可以使用手机上的USB Tethering选项。这应该适用于Android 4.4和最流行的Linux发行版。然后您就可以在Android和PC之间使用TCP / IP。如果您需要避免在一侧输入IP地址,则可以使用基于UDP多播的协议进行服务发现(例如,多播DNS,NSD或SSDP)。

答案 1 :(得分:1)

这样做的一种方法是设置您的电脑应用程序与Android设备作为Android配件交谈。 http://developer.android.com/guide/topics/connectivity/usb/accessory.html

这将允许两个应用程序通过usb发送他们想要的任何数据,Google确实提供了使用附件开发工具包执行此操作的源代码http://developer.android.com/tools/adk/index.html

我没有任何示例源代码,但如果您搜索,可能会有一些。

答案 2 :(得分:0)

您可以在Android设备上使用ADB并调用自定义命令。这个命令应该只输入整数到stdout。作为一个选项,您可以使用标准shell命令,如cat,并使您的Android应用程序将输出整数写入ADB可以读取的某个目录中的文件。

答案 3 :(得分:0)

你可以让Android的行为类似于带有USB CDC(ACM)接口的USB设备,该接口被视为PC上的串行端口(Windows上为COMx,Linux上为/ dev / ttyXXX)。在C ++(PC)方面,这将是"常规"串口处理,虽然在Android上有几个用于此类目的的库,但我从未使用过,所以我无法推荐任何库。