你如何在android中捕获UnknownHostException?

时间:2012-06-26 15:39:06

标签: java android http-post httpclient

我正在使用HttpClient发布然后在Android中检索一些东西,效果很好,但是当我没有互联网连接它强制关闭时,是否可以在制作HttpPost时捕获UnknownHostException?我知道在提出请求之前我可以确保它已连接到互联网,但如果手机没有服务呢?

2 个答案:

答案 0 :(得分:6)

UnknownHostException IOException的子类,所以你应该能够捕获/管理它只是捕获IOException或更具体的东西(NoRoute,ConnectTimeout等)

另请考虑在使用ConnectivityManager

进行网络通话之前添加连接检查

答案 1 :(得分:3)

您可以使用

检查您的互联网连接
            ConnectivityManager cm = (ConnectivityManager)this.getSystemService(Context.CONNECTIVITY_SERVICE);
            if (cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isConnected() || cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnected()) {
                    //connected
            } else {
                    //not connected
            }

并在AndroidManifest中设置权限

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