1、修改系统属性:ro.telephony.default_network
修改说明:
可连续给两个值(如4,1),卡1用的是4,卡2用的是1。数字代表的意义见下方的相关代码片段。
2、这一系统属性:telephony.lteOnCdmaDevice=1或者0
说明:此属性可以默认WCDMA选项
相关源码位置:
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 PREFERRED_NETWORK_MODE = NETWORK_MODE_WCDMA_PREF;
//int PREFERRED_NETWORK_MODE = (SystemProperties.getInt("ro.mtk_lte_support", 0) == 1) ? NETWORK_MODE_LTE_GSM_WCDMA : NETWORK_MODE_WCDMA_PREF;
int PREFERRED_NETWORK_MODE = DefineSystemProperties.MMI_STRIP_PRJ_NAME.equals("project_name")?NETWORK_MODE_LTE_ONLY:((SystemProperties.getInt("ro.mtk_lte_support", 0) == 1) ? NETWORK_MODE_LTE_GSM_WCDMA : NETWORK_MODE_WCDMA_PREF);
frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
// Set the preferred network mode to target desired value or Default
// value defined in RILConstants
int type;
type = RILConstants.PREFERRED_NETWORK_MODE;
l