来自客户端的Android tcp连接

时间:2014-09-21 16:55:17

标签: android tcp connection tcpclient

我正在尝试将我的Android手机作为我在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”作为错误消息。

有什么想法? 谢谢!

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

错误是因为我在主线程上运行了tcp连接..我可以通过使类成为AsyncTask来修复它但我更喜欢添加它:

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

全部谢谢!