Omacp收到network Pin之后,会要求输入Pin码

263 篇文章 2 订阅
103 篇文章 0 订阅

在国外,Omacp收到network Pin的时候,手机会显示输入Pin码,这不符合Omacp的测试规范。


这是因为,在国内,Omacp如果收到network pin,标准的sec值是“”,但是在国外,标准的sec值是0,所以如果针对国外项目,需要进行修改。如下:

请在OmacpReceiverService.java里面添加如下代码:
 1.//new added begin
   if(sec!=null){
        if (sec.equalsIgnoreCase("0")) {
        sec = "";
   }
  }else
   return false;//这里return true或者false,也要看运营商的需求,有的运营商要求,sec=null的时候直接返回不处理,但是国内要求sec=null的时候,继续解析

        //new added end
        // sec == "" indicates Network PIN, in this case, check SIM's IMSI, if
        // verify fails, then ignore this message
        if (sec != null && sec.equalsIgnoreCase("") && mac != null && !mac.equalsIgnoreCase("")) {
2.parseOmacpMessage
方法
//new added begin
        if (sec.equalsIgnoreCase("0")) {
        sec = "";
        }
        //new added end
        if (sec == null || mac == null || sec.equalsIgnoreCase("") || mac.equalsIgnoreCase("")) {
            value.put("pin_unlock", 1);
3.
如果是单卡的话,并修改这里OmacpMessageSettingDetails.java:
 Public static String getSimImsi(int simId) {
                String imsi;
                TelephonyManagerEx mTelephonyManager = TelephonyManagerEx.getDefault();
               Imsi = mTelephonyManager.getSubscriberId(sinId);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值