2011-08-08 108 views
0

我有一个尝试连接到服务器的Android应用程序。但是在创建套接字时出现问题。该应用程序挂起时,它尝试实现以下行:创建套接字时出现问题

Socket socket= null; 
socket = new Socket("192.168.0.15", 6565); 

注意,我已经加入此权限:

<uses-permission android:name="android.permission.INTERNET" /> 

也是我用过的调试,但是当它达到创造插座线和我把它挂已经得到了有关错误的详细信息:

java.net.SocketTimeoutException: Socket is not connected id=829731319824 

我确信端口没有绑定。 我很感谢你的时间。

+0

您是在设备上还是在仿真器上测试它?如果它在设备上有防火墙设置,比如DroidWall? – arunkumar

+0

您是否尝试过socket.setSoTimeout()? – Gopal

+0

我在旧金山的手机上试过它.. anroid sys 2.1update – Hazim

回答

0

很明显,您的连接无法建立,问题不在于您的代码中,而是网络设置。为避免您的应用程序挂起,请确保捕捉到SocketTimeoutException,以便能够向用户显示错误消息以及一些按钮,以便再次尝试或取消连接。

+0

请问我是一个新的android ..怎么做? – Hazim

+0

行..如何得到错误信息 – Hazim

1

您的连接可能无法建立或需要一段时间才能建立。

对java.net.Socket的操作阻塞,这就是为什么你的应用程序似乎挂起。为了避免“挂起”UI,你应该尝试使用另一个线程来建立连接,这样你的UI线程就不会阻塞,并且会保持响应。

+0

请..我需要更多的解释.. – Hazim