ServerSocket不接受droid仿真器

时间:2012-02-09 21:33:16

标签: java android eclipse networking serversocket

我正在尝试使用带有eclipse的droid模拟器建立基本网络连接,但我遇到了问题。服务器到达“Socket s = ss.accept();”行。并等待客户端连接,但客户端似乎无法连接。

现在我已经能够将我的客户端连接到我创建的python服务器,并且与我为droid创建的服务器做同样的事情。我已经允许AndroidManifest中的客户端和服务器上的Internet使用,所以我很遗憾为什么这台服务器不能在我的机器人模拟器上工作。

Sever的:

       ServerSocket ss = new ServerSocket(8888);
            while(!end){
                    Socket s = ss.accept();
                    Log.v("Server","Connection found");
                    BufferedReader input = new BufferedReader(new InputStreamReader(s.getInputStream()));
                    PrintWriter output = new PrintWriter(s.getOutputStream(),true); 
                    String st = input.readLine();

客户端:

        Socket s = new Socket(MYIPADDR,8888);

        BufferedReader input = new BufferedReader(new InputStreamReader(s.getInputStream()));

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

只是添加了Luka的答案,因为你可能会遇到未来的问题:

如果您正在使用套接字,则可能需要使用库来帮助进行稳定连接所需的所有维护。

用于处理连接的好库将是:https://github.com/koush/android-websockets

它会使连接保持活动状态,并且很容易改变以适应您的发送需求。它唯一缺少的是一个处理传入数据的回调功能,但这比完全设置从头开始处理整个连接更容易实现。

答案 1 :(得分:0)

这可能是个问题:Android - Server Socket。主要是问题的第一部分和接受的答案。