到達しようとしているサーバーと通信するためのデスクトップJavaプログラムを作成し、動作させました。UDP パケットを送受信できます。私が行ったことをAndroidに移植する方法を知っています。数日間 Android Emulator をいじっていて、UDP パケットの受信で問題が発生しました。アプリを起動し、サーバーに接続してから、使用しているポートを再接続すると、130 個のパケットが入ってきますが、何もありません... WireShark を使用して、サーバーがまだパケットを送信していることを確認しました。は。Android のエミュレーターにIP フラッド検出のようなものはありますか?
編集:
つづり
- サーバーは、開発用コンピューターが接続されているスイッチに接続されています。
- デスクトップ アプリから送信したパケットにサーバーが応答しています。
- サーバーは、開発用コンピューターの IP アドレスにパケットを送信しています。
私が使用しているredirコマンドは「redir add udp:port:port」です
redir コマンドを発行すると、送信元アドレスが「10.0.2.2」の約 130 個のパケットが取得されます。
- 「adb forward udp:port udp:port」を試してみましたが、「ソケットにバインドできません」というメッセージが表示されました
- エミュレータの外部からのサーバーの IP は「10.10.0.100」です。
編集
- サーバーがエミュレーターまたは別の Android デバイス上にない