【问题标题】:ServerSocket not accepting on droid emulator [duplicate]ServerSocket在机器人模拟器上不接受[重复]
【发布时间】:2012-03-02 09:53:42
【问题描述】:

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

现在我已经能够让我的客户端连接到我创建的 python 服务器,并执行与我为 droid 制作的服务器相同的事情。我已经允许在 AndroidManifest 中的客户端和服务器上使用 Internet,所以我不知道为什么这个服务器不能在我的 droid 模拟器上运行。

服务器:

       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()));

任何帮助将不胜感激。

【问题讨论】:

    标签: java android eclipse networking serversocket


    【解决方案1】:

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

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

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

    它将保持连接有效,并且很容易改变以适应您的发送需求。它唯一缺少的是处理传入数据的回调功能,但这比完全从头开始设置处理整个连接要容易得多。

    【讨论】:

      猜你喜欢
      • 2013-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-01
      • 1970-01-01
      • 2021-07-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多