你如何检查是否可以通过Java连接到Internet?一种方法是:
final URL url = new URL("http://www.google.com"); final URLConnection conn = url.openConnection(); ... if we got here, we should have net ...
但是是否有更合适的方法来执行该任务,特别是如果你需要经常进行连续检查并且很有可能断开互联网连接时?
你应该连接到实际应用程序需要的地方。否则,你要测试是否与某个无关的地方(在这种情况下为Google)建立了连接。
特别是,如果你要尝试与Web服务进行通信,并且要控制该Web服务,则最好使用某种廉价的“获取状态” Web方法。这样,你可以更好地了解“真实”通话是否可能起作用。
在其他情况下,仅打开应打开的端口的连接就足够了-或发送ping命令。InetAddress.isReachable可能很适合你这里的API。