【发布时间】:2017-03-01 22:12:26
【问题描述】:
我在我的应用程序中使用 Volley 进行网络通话,除了一种状态,我的设备以某种方式没有获得网络连接但通过代码检查连接使用以下代码返回 true 的状态之外,一切工作正常且顺利。
public static boolean isNetworkAvailable() {
ConnectivityManager connectivityManager = SessionApplication.getConnectivityManager();
if(connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED ||
connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED) {
//we are connected to a network
return true;
}
else
return false;
}
而不是使用上面的代码返回网络状态 false 我的 volley web 调用返回这个异常“handle com.android.volley.NoConnectionError: java.net.UnknownHostException”。
我通过在我的设备中打开浏览器检查了我的互联网连接,发现它也无法正常工作。所以我对应用程序行为没问题,但我仍然需要处理这种情况,因为这不是用户友好的用户,应该提示一个对话框“检查您的 Internet 连接!”。
这应该是 Android 中的常见问题,请任何人帮助我给我处理此类情况的最佳方法。提前致谢。
【问题讨论】:
标签: java android https unknown-host android-connectivitymanager