Android9.0 代码 判断以太网时候可连接
时间: 2023-12-12 08:02:18 浏览: 89
Android 判断网络连接
在 Android 9.0 中,我们可以使用以下代码来判断设备的以太网是否可连接:
```
private boolean isEthernetConnected() {
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager != null) {
NetworkInfo info = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_ETHERNET);
if (info != null && info.isConnected()) {
// 判断是否能够访问外网
try {
HttpURLConnection urlConnection = (HttpURLConnection) (new URL("http://www.baidu.com").openConnection());
urlConnection.setConnectTimeout(3000);
urlConnection.setReadTimeout(3000);
urlConnection.connect();
return urlConnection.getResponseCode() == 200;
} catch (IOException e) {
e.printStackTrace();
}
}
}
return false;
}
```
这里我们先通过 `ConnectivityManager` 获取当前的网络状态,然后再根据 `TYPE_ETHERNET` 来判断当前是否连接了以太网。如果连接了,则通过 `HttpURLConnection` 连接百度服务器,判断是否能够访问外网。如果能访问,则返回 `true`,否则返回 `false`。需要注意的是,这个方法需要在子线程中执行。
阅读全文