我正在开发一个应用程序,我想访问是否有互联网连接。我可以使用以下命令访问网络状态
private Boolean isNetworkAvailable() {
ConnectivityManager connectivityManager
= (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
return activeNetworkInfo != null && activeNetworkInfo.isConnected();
}但这只会返回手机是否连接到互联网。我想知道连接后是否可以上网。例如,可能是服务器停机或互联网不可用。请让我知道如何做到这一点!
发布于 2013-04-19 15:08:28
试着这样做,
URL url = new URL("Your URL");
URLConnection conexion = url.openConnection();
conexion.setConnectTimeout(10000); // Don't forget to put a time limit
conexion.connect();超时后(上例为10秒),将通过超时异常。所以你可以用它来检查互联网接入是否可用。
发布于 2013-04-19 15:00:59
检查这是一个工作的互联网连接,而不仅仅是你连接到互联网。您可以尝试从您的站点获取已知地址/资源,如1x1 PNG图像或1字节文本文件。此外,它还将回答有关服务器状态的问题。:)
发布于 2013-04-19 15:21:55
检查互联网连接是否正常实现,但如果你想知道你的服务器是否正在运行,首先你需要发送ping或发送存根请求(例如:发送带有任何参数的请求)到你的服务器。如果响应是肯定的,那么你就可以完美地使用你的服务器了。
https://stackoverflow.com/questions/16098810
复制相似问题