【问题标题】:Android tcp connection from client来自客户端的 Android tcp 连接
【发布时间】:2014-11-15 16:21:36
【问题描述】:

我正在尝试让我的安卓手机成为我用 python 编写的服务器的客户端。服务器运行良好(我试过了),但我似乎无法将手机与服务器连接。 这是应该创建连接的函数:

public String createConnection() throws IOException{
    InetAddress serverAddr = InetAddress.getByName(ipString);
    clientSocket = new Socket(serverAddr, portNumber);
    DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());
    BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
    outToServer.writeBytes(Client.INIT_HEY.name());
    String ans = inFromServer.readLine();
    return ans;
}

ipString是用户接收到的服务器ip,portNumber是端口号,都是正确的。 当我尝试连接到服务器时,我收到“null”作为错误消息。

有什么想法吗? 谢谢!

【问题讨论】:

  • 您是否在清单中包含 Internet 权限?我也可以推荐使用 Volley。一个很好的介绍:arnab.ch/blog/2013/08/…

标签: android tcp connection tcpclient


【解决方案1】:

通过 wifi 试试。 如果您可以找到手机的 IP 地址,请尝试从您的开发系统 ping 它。

如果您在手机网络上,请尝试从浏览器访问网站,确保网络连接正常。

【讨论】:

    【解决方案2】:

    错误是因为我在主线程上运行 tcp 连接。我可以通过将类设为 AsyncTask 来修复它,但我更喜欢添加这个:

    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
    StrictMode.setThreadPolicy(policy); 
    

    谢谢大家!

    【讨论】:

      猜你喜欢
      • 2015-12-02
      • 1970-01-01
      • 2010-11-18
      • 1970-01-01
      • 2018-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-27
      相关资源
      最近更新 更多