Android源码分析--CDMA/GSM分支切换


1 默认的电话类型为GSM,这取决于

RILConstants中变量

int PREFERRED_NETWORK_MODE      = NETWORK_MODE_WCDMA_PREF;

2 文件:GsmServiceStateTracker.java

函数:handleMessage

当GSM收到EVENT_SIM_READY后,就会调用pollState()函数。

3 在pollState函数中如果发现有

case RUIM_NOT_READY:

case RUIM_READY:

case RUIM_LOCKED_OR_ABSENT:

case NV_NOT_READY:

case NV_READY:

就认为:Radio Technology Change ongoing, setting SS to off

设置:mState = STATE_POWER_OFF;

这时候就会认为模块断开,重新加载CDMA分支。

PhoneProxy.java

handleMessage()

EVENT_RADIO_TECHNOLOGY_CHANGED

PhoneFactory.java

getCdmaPhone()

相关内容