PLMN SPN运营商名称显示来源

本文详细介绍了手动搜网流程,重点讨论了如何在不同情况下显示SPN或PLMN,涉及EONS算法、EF_SPN、EF_SPDI、EF_PNN和EF_OPL等多个关键数据元素,并提供了查询运营商名字和手动搜网的相关操作流程及日志分析。
摘要由CSDN通过智能技术生成

前言:

         经常遇到SPN,PLMN 显示的问题,做了一个简单总结。

这篇文章重点讲手动搜网流程(QUERY_AVAILABLE_NETWORKS ),

界面上UI显示的OPERATOR,主要是Telephony/Service处理。 

 EONS:  Enhanced Operator Name String

 PLMN: Public Land Mobile Network(公共陆地移动网络)

 SPN: Service Provider Name,就是当前发行SIM卡的运营商的名称

 CPHS ONS:  Common PCN Handset Specification Operator Name String

 NITZ: "NetworkIdentity and Time Zone

 EF_OPL: 存放的是LAC和EF_PNN中的Record Identifier,
 EF_PNN: 中存放的是Network Name,也就是具体的名称了。

 EF_SPDI(Service Provider Display Information 3GPP 51011- 10.3.50)

 EF_SPN(Service Provider Name 3GPP 51011- 10.3.11)

The EFS file can store multiple PLMN info per subscription as per spec 3GPP TS 22.042

参考文档:

    https://www.e-learn.cn/topic/3031894

    https://blog.csdn.net/u010961631/article/details/50682348

    80-ne954-2_c_centralized_eons_overview

   


目录

  1.      架构
  2.      搜索关键字
  3.      手动搜网流程 
  4.      ENOS 算法
  5.      EF_SPN|EF_SPDI|EF_PNN|EF_OPL
  6.      SPN/SPDI 算法
  7.      PLMN 算法
  8.      SE13 表格
  9.      日志

一  架构

 Nas 部分主要参考:  qcril_qmi_nas.cpp

  主要涉及到两个流程:

    1.1  查询运营商名字

     RILJ    : [0182]> OPERATOR [SUB0]
     RILJ    : [0166]< OPERATOR {CHN-UNICOM2, UNICOM2, 46001} [SUB0]

    实际上UI显示的,还要经过Telephony Service 处理,所以遇到该类问题

    先转telephony ,Service 模块。

   

   1.2  手动搜网

         手动搜网最终显示SPN,还是PLMN 主要是由SIM卡决定的。

      这个用的是QCRIL 直接上报的,这篇文章重点讲手动搜网流程

该名字,按照3GPP规范可以是SPN 或者 PLMN. 高通采用的是EONS算法。

 

       

 


二  搜索关键字

      2.1  RILJ:   QUERY_AVAILABLE_NETWORKS |OPERATOR

      2.2  QCRIL:     qcril_qmi_nas_fill_network_scan_response

      2.3  QMI:     nas_perform_network_scan|nas_get_plmn_name

      2.4  0xB0C4  :   LTE PLMN Search Response

 

 


三 手动搜网流程

    默认使用EONS 算法(查找SPN,PLMN)

    QUERY_AVAILABLE_NETWORKS 

 3.1 常用配置:

   persist.vendor.radio.use_cc_names 这个如果配置了,只从ONS返回运营商名字

    persist.vendor.radio.always_send_plmn: 只发送PLMN, 默认是False

   persist.vendor.radio.prefer_spn   spn 优先  ,默认False

   persist.vendor.radio.use_se_table_only: 只使用本地的SE13数据库,默认是False

  3.2  CODE流程:

 


四     ENOS 算法 

        4.1 算法流程图

 

   4.2  简化逻辑

          UI 可以同上报SPN以及PLMN ,显示逻辑通过SIM卡中的EF_SPN等标志位控制

SPN(来源|优先级别) PLMN(来源|优先级别)
EF_SPN EF_OPL
本地配置文件 CPHS_ONS(Common PCN Handset Specification Operator Name String))
  NITZ
  SE13
  UE DataBase
  MCC-MNC 字符串

 

        


五  EF_SPDN|EF_SPDI|EF_PNN|EF_OPL

    5.1 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值