public boolean isReachable(String ipAddress, int port, int timeout)
{
Socket socket = new Socket();
Exception exception = null;
try {
socket.connect(new InetSocketAddress(ipAddress, port), timeout);
}
catch (IOException e) { exception = e; }
finally {
try { socket.close(); } catch (Exception e) {e.printStackTrace(); }
}
return exception == null;
}
Этот код работает, когда я подключен к Интернету. но он также работает, когда я отключен от стороны интернет-провайдера (например, когда срок службы объявлений истек или трафик завершен). , пожалуйста, скажите мне, где проблема?как проверить подключение ip-адреса на конкретном порту?
Вы можете попробовать с помощью этого блока кода? попробуйте { socket.connect (новый InetSocketAddress (ipAddress, порт), таймаут); \t return true; } catch (Exception e) {return false; } –