我有一个每 10 分钟运行一次的 java 应用程序。所以每当线程开始执行时,我必须检查是否有互联网连接。所以我为此使用了 Socket 类。但是这里的问题是,如果电线没有连接到我的系统,套接字类可以正常工作。对我来说,如果我插上电线,那么我有 LAN 但没有互联网。在这种情况下,套接字类无法引发错误。这是我的代码 -
Socket socket = null;
try {
socket = new Socket("www.google.com", 80);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (socket != null) try { socket.close();
}
catch(IOException e) {
e.printStackTrace();
}
System.exit(0);
}
我在这里查看了代码 - Detect internet Connection using Java。但是使用 getContent() 并没有帮助。