在后台检查互联网连接的最佳方式?

Best way to check internet connection in background?

我想检查互联网连接,不仅是用户连接到网络,我还想检查这个网络是否确实连接到互联网,我使用以下代码:

public boolean isInternetAvailable() {
        try {
            InetAddress ipAddr = InetAddress.getByName("google.com"); 

            if (ipAddr.equals("")) {
                return false;
            } else {
                return true;
            }

        } catch (Exception e) {
            return false;
        }

    }

从这里得到它 Answer 顺便谢谢。

这没有像我希望的那样工作,总是 return 错误,即使我在正确的网络中,我想知道如何在后台 运行 这个并显示进度告诉用户连接测试进度的指示器。

我需要这方面的帮助,因为我的应用程序在 JSON 解析时工作了 80%,我宁愿在开始时检查一次连接,而不是每次解析 JSON 时都检查一次。谢谢

如果我没理解错的话,

我会使用进度条 (javaFX) 并使用一个线程来运行您的函数并相应地更新进度条

ProgressBar and Background Processes

Android:Using Thread and Progress bar