私は最近かなりばかげた問題に遭遇しました...私はAndroid(もちろんJava)からサーバー(C#で書かれた)に接続する必要があるアプリケーションを作成しています
クライアント(Java)のコードは次のとおりです。
InetAddress serverAddr = InetAddress.getByName(SERVERIP); //My IP in a constant, it works with a local one...
Log.e("TCP Client", serverAddr.getHostAddress()); //Just to debug
Socket socket = new Socket(serverAddr, SERVERPORT); //Here I get an exception for the global IP
奇妙なことに、昨日はすべてがまだ機能していました...ポート転送に関しては何も変更していません。ポートはまだコンピュータに転送されています。また、Androidマニフェストで「インターネット」権限を設定しました。
サーバーコードはC#で記述されており、テストのためだけに非常に単純に記述されています。
Console.WriteLine("Waitng for connection");
TcpClient client = Server.AcceptTcpClient();
NetworkStream ns = client.GetStream();
以前はクライアントで接続がタイムアウトしたため、ここではTCPClientオブジェクトを取得しません。サーバーには何も届きません。
上で述べたように、昨日はすべてがうまくいったようだったので、それは奇妙です。