8

USB データ ケーブルを使用して、コンピュータから Android アプリケーションと通信したいと考えています。どのリスナーを実装する必要がありますか?

TCP 接続は私のニーズに合っていると思いますが、adb ドライバーを介して接続するのはうまくいかないようです。

データケーブルを使用してWindowsからAndroidに通信するにはどうすればよいですか?

4

4 に答える 4

9

私はここでこの主題についての素晴らしい投稿を見つけました。AndroidデバイスとPCの間でポート転送を行うには、基本的にadbが必要です。例として:

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

次に、AndroidデバイスとPCの両方で標準のソケットプログラミングを使用できます。

于 2012-05-17T08:48:13.323 に答える
3

Android は、USB アクセサリと USB ホストの 2 つのモードを通じて、さまざまな USB 周辺機器と Android USB アクセサリ (Android アクセサリ プロトコルを実装するハードウェア) をサポートします。USB アクセサリ モードでは、外部 USB ハードウェアが USB ホストとして機能します。

詳細については、以下を参照してください: USB ホストとアクセサリと例ここをクリック

于 2012-05-17T08:52:55.957 に答える
1

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

于 2013-11-11T06:15:03.527 に答える