我有以下代碼來檢查服務器的可用性,但它不工作 我一直在使用連接管理器效果很好如何檢查服務器可用性的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
您可以通過提出請求來檢查服務器的可用性。如果你在超時時間內得到響應(檢查響應長度),那麼你的服務器可用,如果沒有,那麼服務器失敗。這就是 –