android 判断网络类型
时间: 2023-07-28 22:49:15 浏览: 144
可以使用Android系统提供的ConnectivityManager类获取当前网络的类型,可以根据返回的网络类型判断网络连接的类型,例如:
```java
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getActiveNetworkInfo();
if (info != null && info.isConnected()) {
int type = info.getType();
if (type == ConnectivityManager.TYPE_WIFI) {
// 当前连接的是WiFi网络
} else if (type == ConnectivityManager.TYPE_MOBILE) {
// 当前连接的是移动网络
}
}
```
需要注意的是,在获取网络类型之前需要获取网络连接的状态。如果当前没有网络连接,`getActiveNetworkInfo()`方法会返回`null`。此外,如果当前连接的是移动网络,还可以通过`getSubtype()`方法获取具体的移动网络类型,例如2G、3G、4G等。
阅读全文