我有以下代码来检查服务器的可用性,但它不工作 我一直在使用连接管理器效果很好如何检查服务器可用性的Android
public static boolean isConnected(Context context, String url){
ConnectivityManager connectivityManager=(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
if(connectivityManager!=null){
if ((connectivityManager.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTED)
||(connectivityManager.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTING)
||(connectivityManager.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTING)
||(connectivityManager.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTED))
{
try{
URL myUrl = new URL(url);
URLConnection connection = myUrl.openConnection();
connection.setConnectTimeout(5000);
connection.connect();
return true;
} catch (Exception e) {
// Handle your exceptions
return false;
}
}
}
return false;
}
您的**代码在哪里检查服务器可用性**? –
内部尝试并捕获 – HemangNirmal
您可以通过提出请求来检查服务器的可用性。如果你在超时时间内得到响应(检查响应长度),那么你的服务器可用,如果没有,那么服务器失败。这就是 –