TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); int networkType = telephonyManager.getNetworkType();
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkCapabilities networkCapabilities = connectivityManager.getNetworkCapabilities(connectivityManager.getActiveNetwork()); if(networkCapabilities != null) { boolean isGsmCapable = networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR); boolean isCdmaCapable = networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR_CDMA); boolean isEvdoCapable = networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR_EVDO); boolean isLteCapable = networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR_LTE); boolean is5gCapable = networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR_NR); }
这些boolean值表示该设备是否支持GSM、CDMA、EVDO、LTE和5G移动网络类型。