运营商名称 是如何显示到 手机通知栏上的?

在我们日常使用手机的过程中,经常会在通知栏或设置菜单中看到特定的运营商名称,例如"中国移动"、"中国联通"或"中国电信"等。
那么,这些运营商的名称是如何出现在我们手机上的呢?手机又是如何区分不同运营商的网络呢?当我们漫游到海外时,手机显示的是国外还是国内的运营商名称呢?

其实,这一切都与PLMN(Public Land Mobile Network,公共陆地移动网络)SPN(Service Provider Name,服务提供商名称)有关。
今天,我们就来揭秘手机运营商名称的显示规则。

  • PLMN编码 与 SPN服务提供商名称
  • PLMN编码 与 PLMN Name的数据来源
  • SPN 服务提供商的显示规则
  • NITZ协议结构(附录)
  • 手机通知栏 运营商名称 显示规则总结

一、PLMN与SPN

首先,让我们来了解一下PLMN和SPN的概念。

  • PLMN
  • SPN

1.1 PLMN

PLMN(Public Land Mobile Network)是一段数字编码,用于识别全球所有移动蜂窝网络,它由MCC(Mobile Country Code,移动国家代码)MNC(Mobile Network Code,移动网络代码)两部分组成。

MCC 和 MNC:

MCC提供了国家/地区级别的标识,而MNC则提供了特定运营商或网络的标识。这种组合的唯一性使得每个运营商的网络都可以被准确地识别和区分。

  • PLMN(Public Land Mobile Network,公共陆地移动网络编码)
  • MCC(Mobile Country Code,移动国家代码)
  • MNC(Mobile Network Code,移动网络代码)

PLMN=MCC+MNC

PLMN 编码举例:

国内三大运营商PLMN编码举例如下:

PLMN运营商
46000中国移动
46001中国联通
46002中国移动
46003中国电信
46005中国电信
46006中国联通
46007中国移动

通过解析PLMN中的MCC和MNC,我们可以确定一个移动网络的所属国家/地区和特定运营商。

HPLMN与VPLMN:

根据手机接入网络情况,可以把PLMN分为HPLMN(Home PLMN,归属PLMN)VPLMN(Visited PLMN,访问PLMN)的概念。

  • HPLMN(Home PLMN,归属PLMN)是指移动通信用户所属的本地公用陆地移动网络,是“归属”网络的概念。
    比如在中国移动营业厅办理了一张移动手机卡,该卡与中国移动网络建立了归属关系,这个网络就是用户的HPLMN。

  • VPLMN (Visited PLMN,访问PLMN)是指用户在漫游状态下访问的非归属网络,即“拜访”网络。
    比如,用户漫游到了其他国家,手机接入了国外的运营商,这个运营商网络的PLMN与手机中SIM卡中IMSI中包含的PLMN不一致,此时这个网络就被称为VPLMN。

1.2 SPN

SPN(Service Provider Name,服务提供商名称)是一段中文或英文字符,例如"中国移动"或"CMCC"。
SPN指的是服务提供商名称,在手机或移动设备的用户界面中,即显示在信号栏、设置菜单或其他位置上的移动网络运营商的标识。

SPN的显示规则与当前注册网络的归属状态有关,根据3GPP TS22.101规范:

  • 如果当前注册网络为HPLMN(本网注册),则显示SIM卡中配置的SPNHPLMN对应的PLMN Name
  • 如果当前注册网络为VPLMN(异网漫游),则显示Roaming PLMN编码对应的PLMN Name(漫游网络名称)。
  • 此外,根据SPN的配置和显示规则,手机漫游时:可能只显示Roaming PLMN Name,也可能Roaming PLMN Name和SPN同时显示

以上提到的三种情况,后续会进行详细说明,这里仅给出大概的显示规则。

二、PLMN编码与PLMN Name的数据来源

上文提到了PLMN编码PLMN Name,这里我们介绍一下其数据来源以及映射关系

  • PLMN 编码的数据来源
  • PLMN Name 的数据来源
  • PLMN与PLMN Name映射关系配置表

2.1 PLMN的数据来源

PLMN编码有两个来源,分别为运营商基站广播的PLMN编码SIM卡中存储的PLMN编码

  • 运营商基站的广播信号,会广播当前网络运营商的PLMN编码。
  • 手机SIM卡中IMSI中会包含该SIM卡的运营商的PLMN编码。

2.2 PLMN Name的数据来源

依据3GPP TS22.101 A.3Country/PLMN indication规范,PLMN Name有三个来源

  • 来源自用户移动设备中存储的PLMN Name (这个存储的PLMN来源自上次连接运营商基站时,基站广播的信息);
  • 运营商基站 NITZ 协议广播的PLMN Name(可选基站广播);
  • 存储在用户的USIM卡中的SPN

并且三种数据的优先级如下:

USIM卡SPN > 基站广播NITZ > 移动手机存储的PLMN Name

3GPP TS22.101 A.3Country/PLMN indication

2.3 PLMN与SPN映射关系表

前文提到过,基站 NITZ 协议广播是一个可选广播(因此NITZ广播可能并不存在)。
若运营商基站未实现NITZ协议,该情况下手机终端只能获取到基站广播的PLMN编码SIM卡存储的SPN

  • 基站广播的PLMN编码
  • SIM卡中存储的PLMN编码对应的SPN

那么这里就有一个问题:若当前手为漫游Roaming网络,该如何获取PLMN编码对应的PLMN Name ?

这里就涉及到了一个由由ITU维护的PLMN与SPN映射关系表

Mobile Network Codes (MNC) under geographic Mobile Country Codes (MCC)

在Android手机商,手机Rom厂商则在Android手机system/etc/ 路径下,存放着一个spn-conf.xml配置列表。由Google和各手机产商进行修改和维护

Android手机SPN配置文件目录

system/etc/spn-conf.xml

在实际的Android手机Framework研发过程中,研发人员根据当前网络的PLMN编码spn-conf.xml中查询对应的SPN

三、SPN显示规则

前文提到过,显示在用户手机通知栏的运营商名称,可以是SPN也可以是PLMN Name甚至可以是PLMN Name-SPN:

  • SPN与PLMN Name显示哪一个
  • SPN与PLMN Name同时显示的规则

3.1 SPN与PLMN Name显示哪一个

根据规范3GPP TS22.101 A.4Service Provider Name indication:

  • 若当前注册网络为归属PLMN 则展示SIM卡中配置的SPN(Service Provider Name,服务提供商名称)
  • 若当前注册网络非归属PLMN(Roaming PLMN),则显示Registered PLMNPLMN Name

image.png

3.2 SPN与PLMN同时显示

根据 3GPP TS31.102 4.2.12EFSPN (Service Provider Name):

若当前注册网络为归属PLMN有SPN就要显示SPN

  • 如果SPN的B1=1,则需要同时显示Registered PLMN
  • 如果SPN的B1=0,则不需要同时显示Registered PLMN

若当前注册网络非归属PLMN(Roaming PLMN),则显示Registered PLMNPLMN Name

  • 如果SPN的B2=0,则需要同时显示SPN
  • 如果SPN的B2=1,则不需要同时显示SPN

image.png

四、NITZ协议

这一节是对NITZ协议结构的补充,对于非专业人员是没有必要详细了解的。

承载NITZ信息的GMM Information Message在运营商网络的部署是可选的,并不是每家运营商基站都有部署。
其对应的消息格式可根据3GPP TS24.008 9.4.19GMM Information:规范进行查看:

3GPP TS24.008 9.4.19GMM Information

3GPP TS24.008 10.5.3.5a Network Name:

3GPP TS24.008 10.5.3.5a Network Name

五、手机运营商名称显示规则总结

当手机连接到某家运营商网络时,用户会 从SIM卡 和 从基站 来获取 PLMN编码 和 PLMN Name:

  • SIM卡中存储了用户 PLMN(Public Land Mobile Network)SPN(Service Provider Name 服务提供商名称)
  • 运营商基站广播了自身网络的PLMN编码PLMN Name信息(通过NITX协议):

SIM卡存储SPN 基站广播PLMN代码

手机接入HPLMN时,显示SIM卡中存储的SPN(Service Provider Name)。手机接入VPLMN时,显示基站广播 PLMN编码 对应的PLMN Name:

若当前注册网络为归属PLMN,SIM卡中有SPN就显示SPN

  • 如果SPN的B1=1,则需要同时显示Registered PLMN Name
  • 如果SPN的B1=0,则不需要同时显示Registered PLMN Name

若当前注册网络非归属PLMN(Roaming PLMN),则显示Roaming PLMN编码对应的PLMN Name

  • 如果SPN的B2=0,则需要同时显示SPN
  • 如果SPN的B2=1,则不需要同时显示SPN

手机上运营商名称显示规则

六、参考

3GPP TS22.101 A.3Country/PLMN indication:
https://www.3gpp.org/ftp/specs/archive/22_series/22.101

3GPP TS22.101 A.4Service Provider Name indication:
https://www.3gpp.org/ftp/specs/archive/22_series/22.101

3GPP TS31.102 4.2.12EFSPN (Service Provider Name):
https://www.3gpp.org/ftp/specs/archive/31_series/31.102

3GPP TS24.008 9.4.19GMM Information:
https://www.3gpp.org/ftp/specs/archive/24_series/24.008

ITU Mobile Network Codes 2023:
https://www.itu.int/dms_pub/itu-t/opb/sp/T-SP-E.212B-2023-PDF-E.pdf

运营商名字是如何获取的?
https://www.e-learn.cn/topic/3031894

Android运营商名称显示之PLMN与SPN显示规则:
https://blog.csdn.net/u010961631/article/details/50682406

spn-conf.xml 运营商名字显示:
https://blog.csdn.net/sjz4860402/article/details/79835663

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/307440.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

npm 切换成淘宝源,以及遇到npm 报错如何解决

淘宝源:npm config set registryhttps://registry.npmmirror.com/ 然后再npm下 package-lock.json这个删了 npm i再试一下

解决npm run dev跑项目,发现node版本不匹配,怎么跑起来?【已解决】

首先问题点就是我们npm run dev 运行项目的时候发现出错,跑不起来,类型下面这种 这里的出错的原因在于我们的node版本跟项目的版本不匹配 解决办法 我这里的问题是我的版本是node14的,然后项目需要node20的,执行下面的就可以正…

Day:007(1) | Python爬虫:高效数据抓取的编程技术(scrapy框架使用)

Scrapy的介绍 Scrapy 是一个用于抓取网站和提取结构化数据的应用程序框架,可用于各种有用的应用程序,如数据挖掘、信息处理或历史存档。 尽管 Scrapy 最初是为网络抓取而设计的,但它也可用于使用API提取数据或用作通用网络爬虫。 Scrapy的优势…

c语言例题,求数组中最大值,99乘法口诀表

例题1:求出数组中最大的值 根据题意,我们知道的是需要从一个数组中找到一个最大的元素并且输出。那首先我们先建立一个数组,然后将一些不有序的整型元素放到数组中,然后再建立一个变量来存放数组中的第一个元素,通过一…

校园通用型发生网络安全事件解决方案

已知校园多教学楼、多教学机房、非标网络机房缺乏防护设备、检测设备、安全保护软件(杀软) 切断所有外网,断网处理!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 部署路由系统可选择爱快、routeros、openwrt。等。可将日志上传到日志分析系统。《这项非必要的》 部署开源防火…

[入门到放弃]设计模式-笔记

模块化设计 20240448 模块不包含数据,通过实例的指针,实现对实例的操作;唯一包含的数据是用于管理这些模块的侵入式链表模块只负责更具定义的数据结构,执行对应的逻辑,实现不同实例的功能; 参考资料 使用…

洛谷题单 -- 图论的简单入门

B3643 图的存储 链接 : 图的存储 - 洛谷 思路 : 这一题要考察图的存储方式 , 一般可以使用邻接矩阵 或 邻接表来存储 图的结点 和1 边的信息 &#xff0c;详情请看代码 : 代码 #include<bits/stdc.h> using namespace std;const int N 1010 ; int n , m ; int …

STM32F407+DHT11采集数据

1、DHT11简介 DHT11 与单片机之间能采用简单的单总线进行通信&#xff0c;仅仅需要一个 I/O 口。传感器内部湿度和温度数据 40Bit 的数据一次性传给单片机&#xff0c;数据采用校验和方式进行校验&#xff0c;有效的保证数据传输的准确性。DHT11 功耗很低&#xff0c;5V 电源电…

零售行业数字化广告评价标准 - 《IAB/MRC零售(广告)测量指南》

IAB/MRC零售&#xff08;广告&#xff09;测量指南 --- 最新标准&#xff0c;2024年1月发布 目录 1出台此标准的目的是什么&#xff1f;2标准宗旨3本标准的主要关键领域4为什么这对品牌和零售商很重要5能给零售媒体中小型玩家带来什么机会&#xff1f;6评价零售媒体效果的最…

221 基于matlab编制的直齿圆柱齿轮应力计算程序

基于matlab编制的直齿圆柱齿轮应力计算程序&#xff0c;输入设计参数&#xff1a;模数、齿顶高、齿宽、啮合齿数、转速、扭矩、安全系数、压力角、齿轮类型&#xff08;开式、闭式&#xff09;等&#xff0c;输出弯曲应力和许用应力&#xff0c;并对比是否满足要求。并把程序成…

RestTemplate—微服务远程调用—案例解析

简介&#xff1a;总结来说&#xff0c;微服务之间的调用方式有多种&#xff0c;选择哪种方式取决于具体的业务需求、技术栈和架构设计。RESTful API和HTTP客户端是常见的选择&#xff0c;而Feign和Ribbon等辅助库可以简化调用过程。RPC和消息队列适用于特定的场景&#xff0c;如…

小剧场短剧剧集收费短剧小程序APP

1. 内容展现 付费、免费、任务解锁&#xff1a;用户可以通过付费直接观看短剧&#xff0c;也可以通过完成平台任务&#xff08;如签到、分享等&#xff09;获得免费观看的机会。这种灵活的解锁方式既满足了用户的多种需求&#xff0c;也促进了平台的活跃度。主流展现形式&…

HarmonyOS分布式应用框架深入解读

随着越来越多设备的智能化&#xff0c;在多设备场景下应用开发面临以下挑战&#xff1a;从多设备的形态差异&#xff08;不同大小、不同分辨率、不同形状的屏幕&#xff0c;多样化的交互方式–按钮、触屏、键盘、语音、手势等&#xff09;&#xff0c;多设备的能力差异&#xf…

【python】图像边缘提取效果增强方法-高斯模糊

一、介绍 高斯模糊是一种常用的图像处理技术&#xff0c;用于减少图像中的噪声和细节。它通过对图像中的每个像素点进行加权平均来实现模糊效果。具体而言&#xff0c;高斯模糊使用一个高斯核函数作为权重&#xff0c;对每个像素点周围的邻域进行加权平均。这样可以使得每个像…

R语言数据可视化:基本绘图系统

目录 plot函数 par函数 hist函数 boxplot函数 plot函数应用实战 全局参数 R语言中有三大绘图系统包括基本绘图系统&#xff0c;Lattice绘图系统&#xff0c;ggplot2绘图系统 基本绘图系统 在R语言中&#xff0c;以下函数通常用于创建和定制图形&#xff1a; plot 函数…

谷歌推出适用于安卓设备的“Find My Device”网络,功能类似苹果Find My

谷歌今日推出了适用于安卓设备的“Find My Device”网络&#xff0c;其功能类似于苹果的“Find My”网络&#xff0c;旨在帮助用户定位丢失、被盗的安卓产品。 安卓的“Find My Device”网络可以利用数以亿计运行 Android 9 或更高版本的安卓设备&#xff0c;通过蓝牙信号追踪丢…

Windows联网状态工具TCPView

文章目录 TCPView命令行工具更多Sysinternals Suite工具 TCPView TCPView用于显示系统上所有 TCP 和 UDP 终结点的详细列表&#xff0c;包括本地和远程地址以及 TCP 连接的状态&#xff0c;界面如下。 列表的表头含义如下 表头含义表头含义Process name应用名称Process id进程…

【电控笔记6】电流回路+延迟效应

问题提出 数字控制系统的delay: 5.4节有介绍T0=0.5TS 低通滤波器的时间常数? 可用示例程序 m2 2 1b 如下图画出开环系统的伯德图进行比较,如图 2-2-4 所示,由于延迟组件会侵蚀系统的相位,因此从图可以看出,加入延迟效应后,q轴电流回路的相位裕度(Phase Margin) 从…

最齐全,最简单的免费SSL证书获取方法——实现HTTPS访问

一&#xff1a;阿里云 优势&#xff1a;大平台&#xff0c;在站长中知名度最高&#xff0c;提供20张免费单域名SSL证书 缺点&#xff1a;数量有限&#xff0c;并且只有单域名证书&#xff0c;通配符以及多域名没有免费版本。并且提供的单域名证书只有三个月的期限。 二&#…

flask毕业设计选题管理系统python+django_96r19

本系统选择编程语言。Pymysql是封装了MySQL驱动的Python驱动一个能使Python连接到MySQL的库。Python语言官方规范访问数据库的统一接口规范(Python DB-API)&#xff0c;防止在使用不同数据库时&#xff0c;由于底层数据库技术不同造成接口程序紊乱的问题。通过本次系统设计可以…