frameworks\base\telephony\java\com\android\internal\telephony\RILConstants.java
build\make\tools\buildinfo.sh

buildinfo.sh中增加:

echo "ro.telephony.default_network=11"

网络类型定义:
frameworks\base\telephony\java\com\android\internal\telephony\RILConstants.java

/* NETWORK_MODE_* See ril.h RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE */int NETWORK_MODE_WCDMA_PREF     = 0; /* GSM/WCDMA (WCDMA preferred) */int NETWORK_MODE_GSM_ONLY       = 1; /* GSM only */int NETWORK_MODE_WCDMA_ONLY     = 2; /* WCDMA only */int NETWORK_MODE_GSM_UMTS       = 3; /* GSM/WCDMA (auto mode, according to PRL)                                       AVAILABLE Application Settings menu*/int NETWORK_MODE_CDMA           = 4; /* CDMA and EvDo (auto mode, according to PRL)                                       AVAILABLE Application Settings menu*/int NETWORK_MODE_CDMA_NO_EVDO   = 5; /* CDMA only */int NETWORK_MODE_EVDO_NO_CDMA   = 6; /* EvDo only */int NETWORK_MODE_GLOBAL         = 7; /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL)                                       AVAILABLE Application Settings menu*/int NETWORK_MODE_LTE_CDMA_EVDO  = 8; /* LTE, CDMA and EvDo */int NETWORK_MODE_LTE_GSM_WCDMA  = 9; /* LTE, GSM/WCDMA */int NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA = 10; /* LTE, CDMA, EvDo, GSM/WCDMA */int NETWORK_MODE_LTE_ONLY       = 11; /* LTE Only mode. */int NETWORK_MODE_LTE_WCDMA      = 12; /* LTE/WCDMA */int NETWORK_MODE_TDSCDMA_ONLY            = 13; /* TD-SCDMA only */int NETWORK_MODE_TDSCDMA_WCDMA           = 14; /* TD-SCDMA and WCDMA */int NETWORK_MODE_LTE_TDSCDMA             = 15; /* TD-SCDMA and LTE */int NETWORK_MODE_TDSCDMA_GSM             = 16; /* TD-SCDMA and GSM */int NETWORK_MODE_LTE_TDSCDMA_GSM         = 17; /* TD-SCDMA,GSM and LTE */int NETWORK_MODE_TDSCDMA_GSM_WCDMA       = 18; /* TD-SCDMA, GSM/WCDMA */int NETWORK_MODE_LTE_TDSCDMA_WCDMA       = 19; /* TD-SCDMA, WCDMA and LTE */int NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA   = 20; /* TD-SCDMA, GSM/WCDMA and LTE */int NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA  = 21; /*TD-SCDMA,EvDo,CDMA,GSM/WCDMA*/int NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 22; /* TD-SCDMA/LTE/GSM/WCDMA, CDMA, and EvDo */int PREFERRED_NETWORK_MODE = Integer.parseInt(TelephonyManager.getTelephonyProperty(0,       "ro.telephony.default_network", Integer.toString(NETWORK_MODE_WCDMA_PREF)));

网络类型4G,3G和2G的判断参考:

/** * 判断移动网络的类型 *  * @param networkType * @return 移动网络类型 */private static final int getNetworkClass(int networkType) {    switch (networkType) {    case TelephonyManager.NETWORK_TYPE_GPRS:    case TelephonyManager.NETWORK_TYPE_EDGE:    case TelephonyManager.NETWORK_TYPE_CDMA:    case TelephonyManager.NETWORK_TYPE_1xRTT:    case TelephonyManager.NETWORK_TYPE_IDEN:        return NETWORK_2G;    case TelephonyManager.NETWORK_TYPE_UMTS:    case TelephonyManager.NETWORK_TYPE_EVDO_0:    case TelephonyManager.NETWORK_TYPE_EVDO_A:    case TelephonyManager.NETWORK_TYPE_HSDPA:    case TelephonyManager.NETWORK_TYPE_HSUPA:    case TelephonyManager.NETWORK_TYPE_HSPA:    case TelephonyManager.NETWORK_TYPE_EVDO_B:    case TelephonyManager.NETWORK_TYPE_EHRPD:    case TelephonyManager.NETWORK_TYPE_HSPAP:        return NETWORK_3G;    case TelephonyManager.NETWORK_TYPE_LTE:        return NETWORK_4G;    default:        return NETWORK_UNKNOW;    }}

参考文献:
https://blog.csdn.net/mxiaoyem/article/details/50857008

更多相关文章

  1. Android检查网络是否连接
  2. Android的NDK开发(3)————JNI数据类型的详解
  3. Android连接到加密网络
  4. Android网络状态监听
  5. android之网络资源多线程下载
  6. Android 判断网络状态实例详解
  7. Android 的网络编程(5)-通过ksoap2调用webservice示例
  8. Android检测网络连接并提示

随机推荐

  1. 系出名门Android(10) - HTTP 通信, XML
  2. android之谁动了我的内存
  3. 从Android运行时出发,打造我们的脱壳神器
  4. android apk 覆盖安装
  5. android ndk之opencv+MediaCodec硬编解码
  6. Android学习06-----布局管理器
  7. 反組譯並修改 Android(安卓)應用程式實例
  8. CH340串口读取
  9. Android(安卓)读取硬件信息技巧
  10. Android(安卓)怎样获得手机信息(四)