【笔记】Android 网络漫游更新网络状态、运营商名称等信息日志分析

本文分析了Android设备在网络漫游时的数据注册状态、ServiceState变化,包括从漫游未知到LTE漫游的更新过程。通过日志可以看到网络状态、运营商名称的更新,并探讨了国际漫游的判断逻辑和SPN显示定制。
摘要由CSDN通过智能技术生成

业务知识

漫游有国内和国际漫游之分,Android代码定义如下:

//frameworks/base/telephony/java/android/telephony/ServiceState.java
    /**
     * registered in a domestic roaming network
     * @hide
     */
    @SystemApi
    public static final int ROAMING_TYPE_DOMESTIC = 2;
    /**
     * registered in an international roaming network
     * @hide
     */
    @SystemApi
    public static final int ROAMING_TYPE_INTERNATIONAL = 3;
ROAMING_TYPE_XXX int Function
ROAMING_TYPE_DOMESTIC 2 国内漫游 domestic
ROAMING_TYPE_INTERNATIONAL 3 国际漫游  international

参考:【笔记】Android 漫游定制SPN定制有关字段-CSDN博客

不清楚漫游到国内外的情况时,可以通过底层上报获取状态,接口getDataRoamingType()。

日志分析

  • < DATA_REGISTRATION_STATE :MD上报注册状态信息
  • Poll ServiceState done :上层Telephony SST更新
  • DataRoamingType:包含在SS网络信息
  • setCarrierText:更新运营商名称
  • Broadcasting ServiceState:SST广播网络状态更新

//处于搜网 

04-12 13:38:30.662296  2098  2545 D RILJ    : [0936]< DATA_REGISTRATION_STATE android.hardware.radio.network.RegStateResult{regState: NOT_REG_MT_NOT_SEARCHING_OP, rat: UNKNOWN, reasonForDenial: NONE, cellIdentity: android.hardware.radio.network.CellIdentity.noinit(false), registeredPlmn: , accessTechnologySpecificInfo: android.hardware.radio.network.AccessTechnologySpecificInfo.noinit(false)} [PHONE0]

//ServiceState状态是漫游中,但状态未知

04-12 13:38:42.310670  2098  2098 D MTKSST  : [GsmSST0] handlePollStateResultMessage: PS cellular. NetworkRegistrationInfo{ domain=PS transportType=WWAN registrationState=ROAMING networkRegistrationState=ROAMING roamingType=UNKNOWN accessNetworkTechnology=LTE rejectCause=0 emergencyEnabled=false availableServices&

  • 26
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值