2012-04-04 4 views
0

私はAndroidと(コミュニケーションのためにZeroC - Iceプラットフォームを使用する)クライアントとサーバーアプリケーションを持っています。サーバーはTCPポート10000でリッスンし、クライアントはTCPポート5501(私が選択した任意のポート番号)を使用します。redirの代わりにadb forwardを使用してください

サーバにtelnet接続してredir add tcp:5501 tcp:10000を実行すると、スムーズに動作します。

しかし、私の現在のシステム設定(仮想マシンでandroidx86バイナリを使用しているため)では、サーバにtelnetできなくなりました。だから私は代わりにadb forwardを使うことができると期待していた。しかし、私が試したどんなポートの組み合わせでも、私はそれを動作させることができませんでした。

私は本当に感謝します。 - デバイスの複製またはデバイスにtelnet接続することは可能ですか? stackoverflowの別の投稿で、Telnetインターフェイスはエミュレータでのみ利用可能です。 - rediradb forwardの違いは何ですか?サーバー上でredir tcp:A:Bを達成するためにadb転送を使用するにはどうすればよいですか?

おかげ

答えて

0

は、私は最終的にそれが仕事を得ることができました。いくつかのコメント

  • USB接続されたデバイスには、イーサネット経由で接続できません。ワイヤレスネットワーク経由でアクセスできます(相手が同じネットワークに接続されていることが前提です)。
  • VirtualBoxには独自のNAT転送機能があります。ポート転送なしでは、デフォルトのネットワーキング構成(NAT)では、仮想デバイスはアクセス不可能です。

    • USB接続デバイスが無線経由でPCに接続している(多くの場合、192.168.1.xのようなものです、あなたのPCのローカルIPアドレスを、見つける)
    • を次のように私の作業セットアップがある

  • NATのVirtualBox転送を有効にしました。私のオプションはTCP 10000です(。10000は、任意のポート番号をされ、それは1024年よりも高くなければならないことに注意してください)10000だから私のUSB接続デバイスがポート10000でPCに接続したときに、それはVirtualBoxのの転送を介して仮想デバイスに転送されます。
  • あなたが「NetworkOnMainThread」例外を取得した場合、仮想デバイスは

    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); 
    StrictMode.setThreadPolicy(policy); 
    

希望これを使用し、TCPポート10000(私は生活を楽にするためにホストアドレスを指定していない)

  • に耳を傾けます助けてくれる人

  • 関連する問題