-1

私は現在、Javaで書かれたサーバーを使用してJava PC/Androidアプリケーションを開発しています。PCクライアントを開発していたとき、localhost:12345でサーバーを起動していましたが、クライアントは問題なくこのサーバーに接続できました(同じホスト名とポートを使用)。昨日、Androidデバイスを使用して接続しようとしたときに問題が発生しました。携帯電話を使用してアプリを開発し、ホストアドレスとしてルーターのパブリックIP 89.xx.xx.xxxとPCクライアント(12345)と同じポートを入力します。もちろん、ルーターにポート転送を設定し(ポート12344から12346の場合)、WindowsDefenderのポート12345に任意の接続タイプのルールを作成しました。しかし、それでも成功しません。私が他のアプリを開発していた約8か月前に、すべてがうまくいったので、これは奇妙です。奇妙なことに、サーバーとPCクライアントを初めて起動したときにWindowsプロンプトウィンドウがありませんでした(アプリがインターネットに接続できるようにするためのDefenderプロンプトを獲得してください)。これはルーターの転送に問題があると思います(ローカルホストでは正しく機能するため)が、他に何ができるかわかりません。転送の横でUPnPをオンにしました。私のルーターはTHOMSONTWG850-4Uです。数秒後、Androidアプリでタイムアウト例外が発生します

4

2 に答える 2

0

サーバーが127.0.0.1(ローカルホスト接続のみが受け入れられる)ではなく、0.0.0.0(任意のインターフェースで着信接続を受け入れる)をバインドしていることを確認しますか?

于 2011-08-15T13:40:18.380 に答える
0

すでに 0.0.0.0 にバインドしている場合は、ルーターを PC の IP アドレスを DMZ に設定して、接続が許可されているかどうかを確認してください。

于 2011-08-15T13:44:25.493 に答える