我正在使用 HttpClient 发布然后在 Android 中检索某些内容,效果很好,但是当我没有互联网连接时,它会强制关闭,他们是在制作 HttpPost 时捕获 UnknownHostException 的一种方法吗?我知道在发出请求之前我可以确保它已连接到互联网,但如果手机没有服务怎么办?
问问题
2452 次
2 回答
6
UnknownHostException是IOException的子类,因此您应该能够捕获/管理它,只需捕获 IOException 或更具体的东西(NoRoute、ConnectTimeout 等)
还可以考虑在进行网络调用之前添加连接检查ConnectivityManager
于 2012-06-26T15:46:54.430 回答
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"/>
于 2012-06-26T15:46:06.817 回答