IVSR---Invalid sim recovery

IVSR: InValid Sim Recovery, 是当发生注冊网络失败“Invalid sim” state,透过逻辑推断此Invalid Sim state是否为网络异常;若推断是网络异常引起。便由AP尝试recovery modem,以达到不重新启动开机的情况下。离开此Invalid Sim state-------眼下遇到一些地方的移动网络错把自己正常的卡当成invalid sim,所以建议开启IVSR
 
Spec规定发生Invalid Sim state时仅仅有重开机或插拔SIM卡才干够离开,所以IVSR是MTK为了解决Operator 网络问题而引入的一个违背Spec的feature,但眼下常见的CMCC入库/CTA/FTA等測试都不会測试这项,也就不会由于IVSR开启而导致这些測试fail------所以眼下MTK默认是开启IVSR的


1.IVSR关闭方式(默认开启):
假设你遇到特殊需求须要关闭IVSR功能,方法例如以下:
GsmServiceStateTracker.java中的onInvalidSimInfoReceived()开头直接return;
 
2. 实做原理:
(1)
Modem notify RIL by AT command URC
+EIND: 16,<plmn_id>,<cs_invalid>,<ps_invalid>,<cause>
 e.g. +EIND: 16,”46002”,1,0,13
 <plmn_id>: string
 <cs_invalid>,<ps_invalid>: integer
   0: Not invalid
   1: Invalid
 <cause>: integer
(2)
RIL will then notify framework layer by the event EVENT_INVALID_SIM_INFO
We handle EVENT_INVALID_SIM_INFO in GsmServiceStateTracker.java:  onInvalidSimInfoReceived()
Please refer the sample code in this function
若想调整Invalid SIM state推断逻辑与处理方式.请自行customize此function
3.  trigger IVSR的条件:
(1) 手机在开机 and SIM refresh 之后, 一定要以前成功注冊 (确定手机/SIM 的组合是真的能够拿到 normal service 的。否则因recovery会给SIM卡上电而可能损坏卡的寿命)
CS domain invalid, 要检查的是 CS domain以前成功注冊过
PS domain invalid, 要检查的是 PS domain以前成功注冊过
(2) 发生 invalid SIM 时的 serving PLMN (给 reject cause 的 PLMN) 必须和最后一次成功註册的 PLMN 是同一家 (确认在这个 PLMN 手机/SIM 是能够成功註册的)
(3) test mode的状态下 或插入的卡必须是 normal SIM(不是test SIM)
posted on 2017-04-17 16:46  ljbguanli  阅读(312)  评论(0编辑  收藏  举报