Android连接服务器,如何在一定时间后停止套接字?

时间:2013-05-03 06:38:30

标签: java android sockets

我正在开发一个在家中使用的个人Android应用程序,用于我自己的功能。

我正在努力使其如果家中的服务器出现故障或无法正常运行,它将在3秒后断开连接。

这是我的代码:

Socket socket = new Socket("10.0.2.2", 26753);
socket.setSoTimeout(3000);
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
out.println("y" + e.getText().toString());
out.println("u" + a.getText().toString());
out.println("EOF");
socket.close();

最后忽略EOF。那就是我的服务器知道何时关闭套接字

所以我把setSoTimeout设置为3000(3秒),但android应用程序没有响应。我可以把它放在一个帖子里,我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可能想尝试使用连接超时:

Socket socket = new Socket();
socket.setSoTimeout(3000);
socket.connect(new InetSocketAddress("10.0.2.2", 26753), 3000);