我有一个客户端电话和服务器电脑。我正在通过手机向我的电脑发送一些数据。问题是手机无法连接到服务器&我得到java.net.sockettimeout
异常,这意味着服务器无法访问。但是,服务器正在等待客户端连接。
ServerCode:
try
{
server = new ServerSocket(PORT_NUM);
lblMessage.setText("waiting for client to connect");
socket = server.accept();
System.out.println("client connected");
lblMessage.setText("client connect");
serverInputStream = socket.getInputStream();
}
catch (IOException e) {
lblMessage.setText("exception: "+ e.toString());
e.printStackTrace();
}
ClientCode:
InetAddress serverAddr = InetAddress.getByName(ip);
Log.e("My Host", serverAddr.getHostName());
socket = new Socket(serverAddr, port);
Log.e("mysocket", socket.toString());
output = socket.getOutputStream();
Log.e("Data sending", "socket created");
} catch (Exception e) {
Log.e("Socket opening", e.toString());
}
此代码昨天有效但现在无效。 我已关闭Windows防火墙,也关闭了防病毒软件。客户端和服务器的端口相同,但由于某种原因,客户端未连接到服务器。
我在手机上使用Windows 7和果冻豆4.2.2。
此致
答案 0 :(得分:0)
检查this。这是将数据发布到服务器的一个很好的例子。如果您具体了解端口号,请在完成服务器的URL后附加帖子。
答案 1 :(得分:0)
您要发送任何数据吗?如{是output.write("Hello world".getBytes())
,如果是,请检查IP地址是否正确