在我的应用程序中,我需要检查设备是否已连接到 Internet。我尝试使用 ConnectivityManager,但它没有给出 100% 的精确结果。例如,我可能有 Wi-Fi 连接,但仍然无法访问互联网资源。在我的情况下,我必须在通过 wi-fi 连接后打开一个 VPN 连接,才能真正访问 Internet。所以使用 ConnectivityManager 的方法不起作用。
那么,关于上述情况 - 我应该编写手动 http 请求以确保还是有其他方法?
这是我正在使用的一些代码
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
return cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnected() && cm.getActiveNetworkInfo().isAvailable();