Android Socket在发送数据时出现异常

时间:2011-11-15 13:00:10

标签: java android sockets

我测试了下面的代码。它在模拟器中工作但在Android Mobile中不起作用。我需要进行任何设置吗?请帮我。 谢谢。

try {
    Socket socket = new Socket("192.168.0.54", 9083);
    PrintWriter out = new PrintWriter(new BufferedWriter(
            new OutputStreamWriter(socket.getOutputStream())), true);
    out.println("Testing");

    InputStream inputStream = socket.getInputStream();
    BufferedReader reader = new BufferedReader(new InputStreamReader(
            inputStream));
    String readObject = reader.readLine();
    System.out.println(readObject);
} 
 catch (Exception e) {
   e.printStackTrace();
 }

2 个答案:

答案 0 :(得分:0)

“通过对等方重置连接”表示手机和服务器之间的某个人(包括在内)在您阅读时关闭了连接。

首先检查服务器是否收到并发送任何内容。如果没有,那么手机和服务器之间的某个人就会阻止转移。如果您使用企业WiFi,可能会有防火墙保护服务器等。如果在3G上肯定有一个。

您应该将堆栈跟踪添加到帖子中。没有它我们的答案只是猜测......

编辑:IP地址192.168.x.x指向内部网络。您确定可以通过WiFi / 3G访问内部网络吗?

答案 1 :(得分:0)

'通过对等方重置连接'通常是由写入已被另一端关闭的连接引起的。换句话说,应用程序协议错误。它不会出现在该写入上,而是出现在后续的I / O操作中。