虚拟运营商APN、SPN参数、Sim卡名称

本帖最后由 Kalyy 于 2016-12-24 16:31 编辑

1.APN 配置:
S7731C5.1:
vendor\sprd\operator\operator_res\apn\apns-conf_8.xml
S7731G/C6.0:
vendor\sprd\overlay\apn\apns-conf_8.xml
  GLobe Prepaid"
       mcc="515"
       mnc="02"
       apn="http.globe.com.ph"
       server="http://www.globe.com.ph/globe.asp"
       type="default,supl"
   />
  Cherry Prepaid"
       mcc="515"
       mnc="02"
       apn="internet.cherry.com.ph"
       server="http://www.cherrymobile.com.ph"
       mvno_type="spn"
       mvno_match_data="Cherry Prepaid"
       type="default"
   />
   
       mcc="515"
       mnc="02"
       apn="internet.cherry.com.ph"
       server="http://www.cherrymobile.com.ph"
       mvno_type="spn"
       mvno_match_data="Cherry Mobile"
       type="default"
/>
虚拟运营商mvno_type 要配成spn mvno_match_data spn 配置的数据内容。
不带mvno_type 的是实体运营商。

2.SPN 配置:
S7731C5.1:
vendor\sprd\oem\config\GlobalConfig\virtual-net-rule\virtual-net-rule-conf.xml
51502" carrier=" Cherry Prepaid" mvno_type="spn" mvno_match_data=" CherryPrepaid"/>
其中mvno_match_data 数据为APN里的 mvno_match_data carrier=" Cherry Prepaid" APN里的 carrier
最后配置如下文件:
vendor\sprd\oem\config\GlobalConfig\spn\virtual-spn-conf.xml
51502Cherry Prepaid" spn=" Cherry Prepaid"/>
其中mvno 数据为 mcc+mnc+APN里配置的apn carrier spn=" Cherry Prepaid" Sim 卡要显示的名称。
虚拟运营商Sim卡名称检索规则:
1.根据APN里的mvno_type="spn"判断是虚拟运营商
2.根据virtual-net-rule-conf.xml查找匹配的SPN顺序ID
3.根据顺序ID在virtual-spn-conf.xml里查找对应的名称
因此这三张表里涉及到SPN的数据要一项一项对应,顺序不能错乱!

S7731G/C6.0:
packages\apps\CarrierConfig\assets\carrier_config_51502.xml
packages\apps\CarrierConfig\assets\carrier_config_51503.xml
……
   
        
        Cherry Prepaid
   
    Cherry Mobile">
      
       Cherry Prepaid
   
   
        
        TM
   
   
        
        ABS-CBN
   
……
Cherry Mobile"> APN 配置里的mvno_match_data 数据,
Cherry Prepaid 为要显示的SIM 卡名称。

3. 运营商名称不显示2G/3G/4G:
S7731G/C 6.0:
SystemUIPluginsHelper.java  KeyguardPluginsHelper.java 修改如下
protected String  appendRatToNetworkName(Context context, ServiceState state, String operator){
       String operatorName = operator;
       SystemUiConfig config = SystemUiConfig.getInstance(context);
       if (context == null || state == null || !getBoolAppendRAT()) {
           return operatorName;
       }
       if(OptConfig.SUN_C7359_C5D_FWVGA_CHERRY){//Kalyy
            return operatorName;
       }
……
}

你可能感兴趣的:(Android,android系统)