ECC 号码总结
1、问题背景
在手机开发过程中,经常遇见各种紧急号码问题,在此特意总结下紧急号码相关知识。
2、紧急号码来源
在MTK RILD EccNumberSource.h中,定义了如下几种紧急号码来源。
按优先级排序介绍如下
2.1、SOURCE_NETWORK
网络下发,通过DL下发。
可以参考:
https://www.sharetechnote.com/html/Handbook_UMTS_EmergencyNumberList.html
MTK平台通过 +CEN1, +CEN2 来进行上报
//代表 73001 网络支持紧急号码上报
10-20 12:31:53.418255 1430 1443 I AT : [0] AT< +CEN1:1,730,01 (RIL_URC_READER, tid:494604676352)
//网络上报紧急号码 133,Category 为 31 即代表该号码同时为 Police,Ambulance,Fire Brigade, Marine Guard, Marine Guard 的服务台
10-20 12:31:53.418329 1430 1443 I AT : [0] AT< +CEN2:31,133 (RIL_URC_READER, tid:494604676352
2.2、SOURCE_SIM
USIM卡通过+ESIMECC消息上报卡中ECC信息
CSIM卡通过+CECC消息上报ECC信息
12-12 17:43:50.745462 1268 1275 V RtcEccNumberController: [0] [parseSimEcc] line: +ESIMECC: 0
12-12 17:43:50.745484 1268 1275 V RtcEccNumberController: [0] [parseSimEcc] There is no ECC number stored in SIM
2.3、SOURCE_CONFIG
MTK RILD 中默认配置路径来自 EccNumberSource.h
#define ECC_OM_FILE_PATH "/system/vendor/etc/ecc_list.xml"
2.4、SOURCE_DEFAULT
协议规定 3GPP TS 22.101必须是紧急号码
#define ECC_DEFAULT "112,911"
#define ECC_DEFAULT_NO_SIM "112,911,000,08,110,118,119,999"
/**
* Indicates the number is available as default. Per the reference, 112, 911 must always be
* available; additionally, 000, 08, 110, 999, 118 and 119 must be available when sim is not
* present.
*/
SOURCE_DEFAULT = 1 << 3,
2.5、其他来源
暂时没用到,暂时不做处理
/**
* Indicates the number is from the OEM property.
* Will mapping to AOSP source type MODEM_CONFIG
*/
SOURCE_OEM_PROPERTY = 1 << 4,
/**
* Indicates the number is from framework
* Will mapping to AOSP source type MODEM_CONFIG
*/
SOURCE_FRAMEWORK = 1 << 5,
/**
* Indicates the number is from test property which add through
* Engineer Mode -> Telephony -> Emergency Numbers
* Will mapping to AOSP source type MODEM_CONFIG
*/
SOURCE_TEST = 1 << 6
2.6、Android FRAMEWORK
packages\services\Telephony\ecc\input\eccdata.txt
Android Q上google添加了相关ecc紧急号码配置,EmergencyNumber.java
对应EMERGENCY_NUMBER_SOURCE_DATABASE
3、紧急号码来分类
对于"/system/vendor/etc/ecc_list.xml"配置来说
typedef enum {CONDITION_NO_SIM = 0, // Only ECC when NO SIMCONDITION_ALWAYS = 1, // Always ECCCONDITION_MMI = 2, // Fake/Special ECC (normal call setup flow)CONDITION_SIM_ONLY = 3, // Only ECC when SIM insertCONDITION_NEVER = 4 // Not ECC in any condition (ex: customer service number)
} EmergencyNumberCondition;
condition 表示紧急号码类型,真紧急,假紧急,无卡紧急
真紧急 ATDE 空口EMERGENCY_SETUP
假紧急 ATD 空口SETUP
enum class EmergencyServiceCategory : int32_t {/*** General emergency call, all categories*/UNSPECIFIED = 0,POLICE = 1 /* 1 << 0 */,AMBULANCE = 2 /* 1 << 1 */,FIRE_BRIGADE = 4 /* 1 << 2 */,MARINE_GUARD = 8 /* 1 << 3 */,MOUNTAIN_RESCUE = 16 /* 1 << 4 */,/*** Manually Initiated eCall (MIeC)*/MIEC = 32 /* 1 << 5 */,/*** Automatically Initiated eCall (AIeC)*/AIEC = 64 /* 1 << 6 */,
};
category表示对应的紧急号码类型
相关配置表如下
相关文章:
ECC 号码总结
1、问题背景 在手机开发过程中,经常遇见各种紧急号码问题,在此特意总结下紧急号码相关知识。 2、紧急号码来源 在MTK RILD EccNumberSource.h中,定义了如下几种紧急号码来源。 按优先级排序介绍如下 2.1、SOURCE_NETWORK 网络下发ÿ…...
《大疆二次开发》EMQX和MQTT部署
EMQX 服务器 基础知识 概念 EMQX (Erlang/Enterprise/Elastic MQTT Broker) ;EMQ/EMQX就是MQTT Broker的一种实现;一款开源的大规模分布式 MQTT 消息服务器,功能丰富,专为物联网和实时通信应用而设计;支持多种协议&…...
【网络】滑动窗口和拥塞窗口
滑动窗口和拥塞窗口是TCP协议中两个重要的窗口概念,它们分别用于流量控制和拥塞控制,在功能和作用上有所不同。 滑动窗口(Sliding Window) 滑动窗口是用于流量控制的机制,它定义了发送方和接收方之间的数据传输量。T…...
数据库知识初步汇总
创建标签表格: CREATE TABLE IF NOT EXISTS labels (标签ID INTEGER PRIMARY KEY,标签名称 TEXT );创建文本与标签的关联表格: CREATE TABLE IF NOT EXISTS 文本标签 (文本ID INTEGER,标签ID INTEGER,FOREIGN KEY (文本ID) REFERENCES texts(编号),FOR…...
Moby简介:openEuler 中的开源docker引擎
Moby 是一个开源的容器化引擎,它提供了创建和管理容器所需的核心功能。在 openEuler 系统中,Moby 作为容器技术的实现之一,它允许用户利用容器化技术来部署、运行和移植应用程序。 Moby 的功能和作用: 1. **容器创建**ÿ…...
分布式光纤测温DTS的测温范围是多少?
分布式光纤测温DTS的测温范围不仅仅取决于光缆的感温能力,还受到多种复杂因素的影响。尽管高温光缆可以耐高温,低温光缆可以耐低温,甚至镀金光缆能够耐受高达700摄氏度的极高温度,然而,这些因素并不能完全解释测温范围…...
Java实现裁剪PDF
目录 安装Java PDF库 Java裁剪PDF页面 Java裁剪PDF页面并将结果保存为图片、HTML、Excel等格式 裁剪PDF页面是一项常见的任务,它可以用来调整文档的尺寸和去除不需要的边距或白边。通过裁剪页面,你可以优化文档的布局和展示效果,使其更符合…...
ZooKeeper以及DolphinScheduler的用法
目录 一、ZooKeeper的介绍 数据模型 编辑 操作使用 ①登录客户端 编辑 ②可以查看下面节点有哪些 ③创建新的节点,并指定数据 ④查看节点内的数据 ⑤、删除节点及数据 特殊点: 运行机制: 二、DolphinScheduler的介绍 架构&#…...
gitlab集群高可用架构拆分部署
目录 前言 负载均衡器准备 外部负载均衡器 内部负载均衡器 (可选)Consul服务 Postgresql拆分 1.准备postgresql集群 手动安装postgresql插件 2./etc/gitlab/gitlab.rb配置 3.生效配置文件 Redis拆分 1./etc/gitlab/gitlab.rb配置 2.生效配置文件 Gitaly拆分 1.…...
STC8增强型单片机开发day01
C51版本Keil环境搭建 搭建流程 环境搭建的基本流程: 从官方网站下载并安装Keil软件。选择安装的软件中的C51工具集并运行。通过从“文件”菜单中选择“项目”来创建新项目。输入项目名称并选择您正在使用的设备。通过从“项目”菜单中选择“添加文件到组”来添加…...
记录: Python解析yml文件,顺序解析,带所有文件等号
记录: Python解析yml文件,顺序解析,带所有文件等号from yaml.composer import Composer from yaml.constructor import Constructor import yamlclass ParseYml:def __init__(self):passstaticmethoddef parse(yml_pathNone):try:loader yaml.Loader(op…...
Npm Install Docusaurus Demo【npm 安装 docusaurus 实践 】
文章目录 1. 简介2. 前提2.1 安装 git2.2 安装 node 3. 安装4. 项目结构5. 访问5.1 localhost 访问5.2 ip 访问 1. 简介 Docusaurus 是一个facebook的开源项目,旨在帮助开发者构建易于维护和部署的文档网站。它提供了一个简单的方法来创建专业的文档网站࿰…...
【工具推荐定制开发】一款轻量的批量web请求命令行工具支持全平台:hey,基本安装、配置、使用
背景 在开发 Web 应用的过程中,作为开发人员,为了确认接口的性能能够达到要求,我们往往需要一个接口压测工具,帮助我们快速地对我们所提供的 Web 服务发起批量请求。在接口联调的过程中,我们通常会用 Postman 等图形化…...
Linux进程——进程的创建(fork的原理)
前言:在上一篇文章中,我们已经会使用getpid/getppid函数来查看pid和ppid,本篇文章会介绍第二种查看进程的方法,以及如何创建子进程! 本篇主要内容: 查看进程的第二种方法创建子进程系统调用函数fork 在开始前ÿ…...
ICode国际青少年编程竞赛- Python-1级训练场-路线规划
ICode国际青少年编程竞赛- Python-1级训练场-路线规划 1、 Dev.step(3) Dev.turnLeft() Dev.step(4)2、 Dev.step(3) Dev.turnLeft() Dev.step(3) Dev.step(-6)3、 Dev.step(-2) Dev.step(4) Dev.turnLeft() Dev.step(3)4、 Dev.step(2) Spaceship.step(2) Dev.step(3)5、…...
uniapp微信小程序1rpx border在某些手机机型上边框显示不出来解决方案
小程序在ios系统中,如果border小于1px的情况下,border就可能显示不全(可能少了上下左右任意一边) 只需要加一个::after或::before伪类,使用绝对定位定在原来元素上边就不会产生问题了! .d_card_line1_tag { padding: 1rpx 14r…...
Linux mkfs.ext2命令教程:如何创建ext2文件系统(附实例详解和注意事项)
Linux mkfs.ext2命令介绍 mkfs.ext2是Linux系统中用于创建ext2文件系统的命令。它的作用是在指定的设备上创建一个ext2文件系统,使该设备能够存储文件和目录。创建ext2文件系统的过程包括以下几个步骤。 Linux mkfs.ext2命令适用的Linux版本 mkfs.ext2命令在大多…...
基于Springboot的校园招聘系统(有报告)。Javaee项目,springboot项目。
演示视频: 基于Springboot的校园招聘系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&…...
将 Vue、React、Angular、HTML 等一键打包成 macOS 和 Windows 平台客户端应用
应用简介 PPX 基于 pywebview 和 PyInstaller 框架,构建 macOS 和 Windows 平台的客户端。本应用的视图层支持 Vue、React、Angular、HTML 中的任意一种,业务层支持 Python 脚本。考虑到某些生物计算场景数据量大,数据私密,因此将…...
使用 MobaXterm 链接 Ubuntu(Windows子系统)
MobaXterm_Personal_22.1 Ubuntu(Windows子系统)...
QT设计模式:代理模式
基本概念 代理模式(Proxy Pattern)是一种结构型设计模式,它允许你提供一个代理对象,以控制对其他对象的访问。 代理通常在客户端和实际对象之间充当中介,用于控制对实际对象的访问(如登录控制)…...
独热编码One-Hot是什么?在实际应用中具体是如何存储的?
One Hot编码是一种常用的文本或类别数据编码方式,尤其在自然语言处理和机器学习中。在One Hot编码中,每个词(或类别)会被表示为一个二进制的向量,这个向量的长度等于词汇表(或类别总数)的大小&a…...
计算机视觉与深度学习实战之以Python为工具:基于GUI搭建通用视频处理工具
注意:本文的下载教程,与以下文章的思路有相同点,也有不同点,最终目标只是让读者从多维度去熟练掌握本知识点。 下载教程:计算机视觉与深度学习实战-以MATLAB和Python为工具_基于GUI搭建通用视频处理工具_项目开发案例教程.pdf 一、引言 随着计算机视觉和深度学习技术的飞速…...
18.Docker学习
1.Docker应用场景 Docker借鉴了标准集装箱的概念。标准集装箱将货物运往世界各地,Docker(模板)将软件运往各个环境(测试环境和生产环境拉取镜像(实例)),相当于是一个模子刻出来的 …...
树莓派4b红外检测
1.红外检测连接图 2.红外检测工作原理 红外传感器的工作原理类似于物体检测传感器。该传感器包括一个红外LED和一个红外光电二极管,因此通过将这两者结合起来,可以形成一个光耦合器。 红外LED是一种发射红外辐射的发射器。该LED看起来与标准LED相似&a…...
大模型的不足与解决方案
文章目录 ⭐ 不具备记忆能力 上下文窗口受限⭐ 实时信息更新慢 新旧知识难区分⭐ 内部操作很灵活 外部系统难操作⭐ 无法为专业问题 提供靠谱的答案⭐ 解决方案的结果 各有不同的侧重 在前面三个章节呢,为大家从技术的角度介绍了大模型的历程与发展,也为…...
Java中使用FlatBuffers实现序列化
Java 中的 FlatBuffers有助于高速数据序列化/反序列化,消除解析开销。它由 Google 开发,为跨平台数据交换提供无模式、内存高效的解决方案。 Java 开发人员可以利用其直接内存访问来实现最佳性能和最小内存占用,从而提高应用程序速度、可扩展…...
[图解]SysML和EA建模住宅安全系统-02
1 00:00:00,900 --> 00:00:02,690 这个就是一个块定义图了 2 00:00:03,790 --> 00:00:04,780 简称BDD 3 00:00:05,610 --> 00:00:08,070 实际上就是UML里面的类图 4 00:00:08,080 --> 00:00:09,950 和组件图的一个结合体 5 00:00:13,150 --> 00:00:14,690 我…...
2024年北京服贸会媒体邀约资源有哪些?
传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 2024年北京服贸会(中国国际服务贸易交易会,简称CIFTIS)作为中国重要的国际性服务贸易盛会,会吸引众多媒体的关注和参与。媒体邀约资源通常…...
大语言模型LLM入门篇
大模型席卷全球,彷佛得模型者得天下。对于IT行业来说,以后可能没有各种软件了,只有各种各样的智体(Agent)调用各种各样的API。在这种大势下,笔者也阅读了很多大模型相关的资料,和很多新手一样&a…...
团队协同网站开发/专业搜索引擎seo服务
看了几本书,发觉自己好久没有看书了。 这几个月逛了几次书店,就今天的这次属于是有点进书店的感觉。《Professional C# 2008》真的很大一本,拿在手里看挺辛苦的。蹲着看了几章,还是中文比较好看懂,之前看2005的英文版。…...
做电影网站需多大的空间/优化设计答案五年级上册
MATLAB概率分布函数mean Average or mean value of arraystd Standard deviationcorrcoef Correlation coefficientsmedian Median value of arraymax Largest elements in arraymin Smallest elements in array统计工具箱函数表Ⅰ-1 概率密度函数函数名对应分布的概率密度函数…...
wordpress 微语/seo推广排名重要吗
A<-na.omit(A)A可以是vector(list),data frame或matrix。如果A是data frame或matrix,则同一行如果有一个NA,这一行都会被删除。转载于:https://blog.51cto.com/tao975/1391217...
吕梁网站制作吕梁安全/中文域名注册
从一个运行了RTX系统的程序中跳转到另一个带有RTX系统的程序时,程序卡在RTX初始化中,在跳转前关闭滴答定时器中断,跳转正常 http://www.keil.com/support/docs/3925.htm...
免费帮助建站/谷歌推广怎么做
1.修饰类(只有两种)默认访问权限(包访问权限):用来修饰类的话,表示该类只对同一个包中的其他类可见。(只有在本包的类中可以实例化,其他包中无法import和实例化)public:用来修饰类的话,表示该类对其他所有的类都可见。…...
Javaweb网站建设/百度广告联盟
管理节点 docker swarm leave --force普通节点 docker swarm leave欢迎小伙伴讨论,如有错误请在评论区评论或发私聊消息,谢谢你。...