需要一种通过USB在PC上连接Android应用程序与C ++程序的方法,这将允许Android应用程序通过USB向PC上的c ++程序发送恒定的实时数据流(主要是整数值)并随身携带相应地采取行动。我知道通过wifi或蓝牙更容易做到这一点,但我想用USB进行连接。
我已经在网上搜索了类似的问题,尝试了很多代码,但是没有代码对我有用。我非常感谢c ++部分的示例代码,并且它的android对应物允许轻松完成。
答案 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上有几个用于此类目的的库,但我从未使用过,所以我无法推荐任何库。