Usb数据线在Android通讯

我想用usb数据线从我的电脑与我的android应用程序进行通信。 我应该执行什么样的听众?

我认为TCP连接将适合我的需要,但通过adb驱动程序连接它似乎是尴尬的。

如何使用数据线从Windows到Android进行通信?

Solutions Collecting From Web of "Usb数据线在Android通讯"

我在这里find了一个关于这个主题的好post。 您基本上需要adb才能在Android设备和PC之间进行端口转发。 举个例子:

C:\android-sdk-windows\tools\adb.exe forward tcp:38300 tcp:38300 

然后,您可以在Android设备和PC中使用标准套接字编程。

Android通过USB配件和USB主机两种模式支持各种USB外围设备和Android USB配件(实现Android配件协议的硬件)。 在USB配件模式下,外部USB硬件充当USB主机。

欲了解更多信息,请参阅: USB主机和附件 ,例如点击这里

您需要有支持API或SDK的USB数据传输电缆(也称为USB数据链路电缆),然后使用以下代码:

 void usb2usbComm() { BYTE buf[65530]; LPU2URET pU2uRet; BOOL bRet; int ret; CString msgstr; ret = u2u_open(); if (ret == -1){ AfxMessageBox("Open U2U device Success."); }else{ msgstr.Format("Open U2U device fail,return:%d", ret); AfxMessageBox(msgstr); return; } //send data bRet = u2u_SendData(buf, 65530, ret); if(!bRet) { msgstr.Format("Send data error,return:%d", ret); AfxMessageBox(msgstr); return; } //receive data while (1){ bRet = u2u_RecvData(recvData, dataLen, ret); if( !bRet ) { msgstr.Format("Receive data error,return:%d", ret); AfxMessageBox(msgstr); u2u_close(); return; }else{ break; } } u2u_close(); } 

请参阅: 参考1 , 参考2

如果数据量较低,则可以使用MTP协议来回复制文件。 在大多数设备上很容易获得,不需要启用USBdebugging或使用USB配件模式。