• 移动4G插卡注网


    本文根据插入移动4G单卡到注册4G网络过程的mtklog分析。

    插卡动作:

     

    从以上信息无法区分单卡还是双卡,通过ATR参数判断:

     

    注网流程,此过程未开启4G数据连接:

    [MS->NW] ESM_MSG_PDN_CONNECTIVITY_REQUEST (PTI:5, EBI:0)

     

    [MS->NW] EMM_Attach_Request(EPS attach type="EMM_ATTACH_TYPE_COMBINED_ATTACH")

     

    [NW->MS] ESM_MSG_ESM_INFORMATION_REQUEST (PTI:5, EBI:0)

     

    [MS->NW] ESM_MSG_ESM_INFORMATION_RESPONSE (PTI:5, EBI:0)

     

    [NW->MS] EMM_Attach_Accept(EPS attach result="EMM_ATTACH_RESULT_COMBINED_ATTACHED")

     

    [NW->MS] ESM_MSG_ACTIVATE_DEFAULT_EPS_BEARER_CONTEXT_REQUEST (PTI:5, EBI:5)

     

    [MS->NW] ESM_MSG_ACTIVATE_DEFAULT_EPS_BEARER_CONTEXT_ACCEPT (PTI:0, EBI:5)

     

    [MS->NW] EMM_Attach_Complete

     

    上报信号强度事件(Ril.cpp):

     

     

    RILJ 的处理函数(Ril.java):

     

     

    mSignalStrengthRegistrant 对象的创建(BaseCommands.java):

     

     

    setOnSignalStrengthUp() 函数在ServiceStateTracker 类的构造函数中调用:

     

    通过传入this,EVENT_SIGNAL_STRENGTH_UPDATE消息由该类或其子类处理,该处理函数在GSMServiceStateTracker 类中:

     

    mSignalStrengthChangedRegistrants 通知者对象的初始化:

     

    向该通知者添加监听对象方法:

     

    分析该方法暂未被调用,所以没有需通知的监听对象。

    继续分析onSignalStrengthResult() 函数处理上报的信号:

     

    setGsm() 设置phone标识;isGsm = true,代表Gsm、Lte;否则代表Cdma

    函数validateInput() 对信号区间做一个判断:

     

    notifySignalStrength() 更新信号强度:

     

    判断当前信号强度与上次保留的信号强度值,获取信号强度等级:

    继续分析PhoneBase 类的 notifySignalStrength() 函数:

     

    mNotifer 是 PhoneNotifer 接口的对象,notifySignalStrength() 方法的实现在 DefaultPhoneNotifier 类中:

     

    方法如下:

     

    mRegistry 对象的创建:

     

    类TelephonyRegistry 继承自 ITelephonyRegistry.Stub,作为Service运行在system_server进程中,它会通知注册者。

    上面的DefaultPhoneNotifier运行在com.Android.phone进程中,当信号强度值变化时,通过Service进行通知(service被感兴趣的注册者调用了listen,添加了回调函数。

     

    通知上层信号强度变化。

    可参考:http://blog.csdn.net/feitian_666/article/details/52879929

  • 相关阅读:
    如何理解「复位 」?
    menuconfig配置
    编译Linux内核过程中遇到的问题与解决
    解决qt 5.14版本 qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization faile问题
    认真教好软件工程
    2016同学们博客链接汇总
    车站订票系统可行性分析报告
    第四纪与地貌学(1)——长江口第四纪沉积物中构造与古气候耦合作用的探讨
    软件工程(1)——对书本的温习
    四则运算
  • 原文地址:https://www.cnblogs.com/kaifyou/p/6282435.html
Copyright © 2020-2023  润新知