android如何判断当前wifi是否有网
时间: 2023-12-04 09:02:06 浏览: 25
Android可以通过判断当前连接的WiFi网络是否能够访问互联网来判断WiFi是否有网。具体实现可以参考以下代码:
``` java
public static boolean isWifiConnected(Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager != null) {
NetworkInfo wifiNetworkInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (wifiNetworkInfo != null && wifiNetworkInfo.isConnected()) {
// 判断WiFi是否能够访问互联网
try {
HttpURLConnection connection = (HttpURLConnection) new URL("https://www.baidu.com").openConnection();
connection.setConnectTimeout(3000);
connection.setReadTimeout(3000);
connection.setRequestMethod("HEAD");
int responseCode = connection.getResponseCode();
return responseCode == HttpURLConnection.HTTP_OK;
} catch (IOException e) {
e.printStackTrace();
}
}
}
return false;
}
```
在该代码中,首先通过ConnectivityManager获取当前连接的WiFi网络信息,然后通过访问百度的方式判断该WiFi网络是否能够访问互联网,最终返回判断结果。