在Android中,可以使用TelephonyManager类的getNetworkType()方法来判断当前网络类型。该方法返回一个整数值,代表当前网络的类型,例如:
- TelephonyManager.NETWORK_TYPE_GPRS:2G网络
- TelephonyManager.NETWORK_TYPE_EDGE:2.5G网络
- TelephonyManager.NETWORK_TYPE_UMTS:3G网络
- TelephonyManager.NETWORK_TYPE_HSPA:3.5G网络
- TelephonyManager.NETWORK_TYPE_LTE:4G网络
示例代码如下:
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); int networkType = telephonyManager.getNetworkType(); switch (networkType) { case TelephonyManager.NETWORK_TYPE_GPRS: // 2G网络 break; case TelephonyManager.NETWORK_TYPE_EDGE: // 2.5G网络 break; case TelephonyManager.NETWORK_TYPE_UMTS: // 3G网络 break; case TelephonyManager.NETWORK_TYPE_HSPA: // 3.5G网络 break; case TelephonyManager.NETWORK_TYPE_LTE: // 4G网络 break; default: // 其他类型网络 break; }
通过判断返回的networkType值,可以确定当前设备所连接的网络类型。