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

2014-11-24 11:15:18 · 作者: · 浏览: 1

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()