在 OkHttp3 中检测 WiFi 连接丢失

Detecting loss of WiFi connection in OkHttp3

当 OkHttp3 调用 onFailure 回调时,它传递一个 IOException。是否有 IOException 的特定子类指示目标设备已从 WiFi 网络中消失?还有另一种方法可以检测到这一点吗?

IOException 有几个子class;虽然假设某些东西掉线可能是保存 - 因为当 own 网络连接仍然存在时,它必须是连接的另一端。当它抛出一个 IOException 时,那是一个 IOExcpetion;铸造它不会添加任何更多信息。

可以检测到 自己的 网络连接的状态,但不能检测到 OkHttp3。这是我 GitHub 上的一个例子;参见 class ConnectivityListener 和 class ConnectivityReceiver

您将如何检测另一台主机的网络连接状态? 这可以通过关闭任一设备的 WiFi 网络来测试;这两种情况都会导致 IOException.