SIM Switch feature是Smart 3G switch feature在LTE版本号上发展演变而来的功能; MTK双卡双待单通版本号仅仅有一个3/4 G Protocol。所以同一时刻仅仅有一个卡能够camp on 3/4G,默认在卡槽1; 与Smart 3G switch功能相应的,LTE版本号上面。MTK有SIM Switch feature,能够在某些case下自己主动将3/4G protocol切给sim2用。 配置: 1.开关SIM Switch功能的配置 在ProjectConfig.mk里面设置 MTK_SIM_SWITCH = yes/no MTK_SIM_SWITCH_POLICY = 1/2 1: open market rule 2: operator rule 假设 MTK_SIM_SWITCH 为no, MTK_SIM_SWITCH_POLICY 的值将会被忽略。 2.SIM Switch与3G Switch配置的关系: KK之前的版本号配置3G Swtich; KK1.MP3,KK1.MP11,配置SIMSwitch;其它KK1的版本号配置3G Switch; KK1.MP3DS KK2.MP13及之后的版本号。配置SIMSwitch; 自己主动切换规则: 自己主动切换的时机 Bootup / After SIM changes: 1)Normal boot up 2)IPO / Modem reset 3)SIM hot plug / common slot SIM Switch Policy 提供2种切换规则: 1.Open Market Policy (OM) Code path: alps\mediatek\frameworks\base\telephony\java\com\mediatek\telephony\SimSwitchPolicyDefault.java Open Market Policy Rules: 1)3/4G capability 默认在SIM1 2)仅插1张卡时: 3/4G capability 将会切到这张仅有的SIM卡上 3)插2张卡时: 看卡槽中插的卡是否有上次开机时设定为的,假设有。优先将切给这张卡用(last ICCID saved) 假设没有,则上一次关机3g 开在哪个卡槽就在哪个卡槽. 4)Open Market Policy 总是同意用户手动切换; 2.Operator Policy (OP) Code path: alps\mediatek\frameworks\base\telephony\java\com\mediatek\telephony\SimSwitchPolicyOp.java 同意其它的operator定义新的rule,眼下仅实现CMCC的rule. Operator Policy 仅在某些case下同意用户手动切换. CMCC的rule: 在open market 切换的基础上,须要遵循例如以下的规则: 1)CMCC policy check rules (优先级) a)运营商的优先级: 中国移动用户卡 > 非中国大陆运营商 中国大陆非中国移动运营商仅仅能注冊到2G; b)SIM类型优先级 USIM > SIM 2)同意用户手动切换的条件: 当两张卡的operator和type同样时,才同意用户手动切换。 很多其它关于SIM Switch切换规则的说明,能够參见DMS上面的例如以下文档: SIM switch policy-LTE.pptx和SIM Switch Introduction-SGLTE DSDS.pptx; (直接在DMS上面搜索SIM switch就能够找到)