数据业务入网attatch.docxVIP

  • 1
  • 0
  • 约1.9万字
  • 约 13页
  • 2019-03-06 发布于江苏
  • 举报
? 经过前面 HYPERLINK /u010961631/article/details\t _blank 这些过程,网络连接所需要的条件就全部准备就绪,接下来就是等待网络接入。 ? ? ? ? 我们把网络接入过程简单分为三个阶段: ? ? ? ? 触发阶段 ? ? ? ? ? ? ----该阶段是由各种不同事件触发的,比如SIM载入完毕、PS域Attach成功、通话结束、APN改变等,该阶段的最终都是要调用setupDataOnConnectableApns()方法; ? ? ? ? 准备连接阶段 ? ? ? ? ? ? ----该阶段是指,在DcTracker收到建立连接的请求之后,需要进行一系列有效性检测,比如APN是否已经激活、PS是否已经就绪、用户是否打开网络开关等,然后创建DataConnection()对象,准备发起连接请求; ? ? ? ? 发送连接命令阶段 ? ? ? ? ? ? ----该阶段是指,在DataConnection收到DcTracker的请求之后,将请求转交给RILJ的过程,经过该阶段后,请求就发送到了RIL以及Modem层,由底层完成信令的发送和接收; 一、触发阶段 ? ? ? ? 有多种事件可以触发网络接入过程,具体来说分为以下几个原因: [java] HYPERLINK /u010961631/article/details\o view plain view plain HYPERLINK /u010961631/article/details\o copy copy HYPERLINK /u010961631/article/details\o print print HYPERLINK /u010961631/article/details\o ? ? //漫游相关?? static?final?String?REASON_ROAMING_ON?=?roamingOn;?? static?final?String?REASON_ROAMING_OFF?=?roamingOff;?? //PS?attach?? static?final?String?REASON_DATA_ATTACHED?=?dataAttached;?? //APN改变?? static?final?String?REASON_APN_CHANGED?=?apnChanged;?? //通话结束?? static?final?String?REASON_VOICE_CALL_ENDED?=?2GVoiceCallEnded;?? //SIM载入完毕?? static?final?String?REASON_SIM_LOADED?=?simLoaded;?? //网络模式改变?? static?final?String?REASON_NW_TYPE_CHANGED?=?nwTypeChanged;?? ? ? ? ? 我们挑选最常见的REASON_DATA_ATTACHED原因来分析网络连接的发起过程。 ? ? ? ? 什么是Data Attach事件呢?其实就是手机的PS域Attach成功,而PS域是和CS域相对应,简单来说,手机(2G/3G)打电话是在CS域上进行,而数据流量是在PS域上进行,PS域附着(Attach)成功之后才可以发起数据激活的信令,然后才可以上网,默认状态下,手机开机后就会发起PS附着的信令给网络,附着成功之后将会接到成功的消息,由于DcTracker当初初始化时在registerForAllEvents()中注册了Attach的监听器: [java] HYPERLINK /u010961631/article/details\o view plain view plain HYPERLINK /u010961631/article/details\o copy copy HYPERLINK /u010961631/article/details\o print print HYPERLINK /u010961631/article/details\o ? ? protected?void?registerForAllEvents()?{?? ????//监听是否PS域Attach状态?? ????mPhone.getServiceStateTracker().registerForDataConnectionAttached(this,?DctConstants.EVENT_DATA_CONNEC

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档