来自客户端的Android tcp连接

来自客户端的Android tcp连接

问题描述:

我想让我的android手机成为我在python中编写的服务器的客户端。服务器工作良好(我已经尝试过),但我似乎无法连接手机与服务器。 这是应该创建连接功能:来自客户端的Android tcp连接

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,端口号是端口号,它们都是正确的。 当我尝试连接到服务器时,收到“null”作为错误消息。

有什么想法? 谢谢!

+0

您是否在清单中包含Internet权限?我也可以推荐使用Volley。一个很好的介绍:http://arnab.ch/blog/2013/08/asynchronous-http-requests-in-android-using-volley/ – VonSchnauzer 2014-09-21 17:15:58

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

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

错误是因为我是跑在主线程TCP连接..我可能已经通过将一个类固定的AsyncTask,但我者优先添加此:

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

谢谢大家!