Telephony CarrierConfig配置

1、CarrierConfig配置介绍

        CarrierConfig(运营商配置),是Android为了针对不同运营商配置不同功能的配置文件,类似Modem的MBN配置,可以实现插入不同运营商卡,不同的功能实现或菜单显示等。

2、CarrierConfig的架构

        CarrierConfig代码涉及

packages\apps\CarrierConfig

packages\services\Telephony

frameworks\base\telephony\java\android\service\carrier

        其中packages\services\Telephony进程主要实现ICarrierConfigLoader.aidl相关接口,提供给其他APP调用,

        packages\apps\CarrierConfig代码主要对框架类CarrierService进行复写,CarrierService有ICarrierService.aidl的实现。通过复写CarrierService的onLoadConfig函数,实现packages\services\Telephony跨进程调用packages\apps\CarrierConfig加载对应的配置CarrierConfig配置文件。

3、CarrierConfig的加载流程

        当插入对应SIM卡后,相关CarrierConfig流程加载如下

        可以看到最终调用到CarrierConfig的DefaultCarrierConfigService.java的onloadConfig函数,相关Log打印如下。

        当加载完成后,packages\services\Telephony会存缓存,路径如下,不同卡对应不同文件

/data/user_de/0/com.android.phone/files

onloadConfig函数的实现,可以看到加载优先级别如下

1、carrier_config_carrierid_*.xml

2、carrier_config_mccmnc_*.xml

3、vendor.xml

其中carrierid可以参考

packages\providers\TelephonyProvider\assets\latest_carrier_id\carrier_list.textpb中的描述,注意不要随意修该文件,google有CTS测试。

    注意:如果配置carrier_config_carrierid_*.xml后发现不生效,可以看下对应vendor.xml是否有复写,这个会carrier_config_carrierid_*.xml的配置。

        无卡配置参考carrier_config_no_sim.xml,这里不做加载说明。

4、常用配置文件      

1、gsm cdma 是否可显示hd 图标  (可用于CSFB SRVCC)
gsm_cdma_calls_can_be_hd_audio

2、默认vowifi开关
carrier_default_wfc_ims_enabled_bool

3、vt是否可用
carrier_vt_available_bool

4、紧急呼是否可以存在与通话记录
allow_emergency_numbers_in_call_log_bool

5、Volte是否可用
carrier_volte_available_bool

6、vowifi是否可用
carrier_wfc_ims_available_bool

7、Vowifi优先级
carrier_default_wfc_ims_mode_int

8、是否使用ut
carrier_supports_ss_over_ut_bool

9、Call Settings中call barring是否可见

call_barring_visibility_bool

10、短信在收到多少条后会变成彩信

smsToMmsTextThreshold

11、显示4G+图标

hide_lte_plus_data_icon_bool 配置为false

lte_plus_threshold_bandwidth_khz_int LTE载波聚合默认20M,是否需要配置看4G+带宽

12、Voice mail number是否允许编辑
<boolean name="editable_voicemail_number_setting_bool" value="false"/>
13、Voice mail number默认语音信箱号码
<string name="default_vm_number_string">*86</string>

14、漫游模式数据默认开关

<boolean name="carrier_default_data_roaming_enabled_bool" value="true"/>

15、显示H+图标

<boolean name="hide_3g_plus_data_icon_bool" value="false"/>

16、volte开关是否置灰

editable_enhanced_4g_lte_bool

17、短信中心(SMSC)号码不可编辑

<boolean name="allowEditingSmscAddress" value="false" />

18、4G RAT图标显示LTE

<boolean name="show_4g_for_lte_data_icon_bool" value="false"/>

19、video call forward可用

<boolean name="supports_video_callforward_bool" value="true"/>

20、vilte关闭数据业务可用

vilte_data_is_metered_bool

21、视频通话合并按钮

support_video_conference_call_bool 

默认配置也可以参考CarrierConfigManager.java的的文件

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

力扣之1355.活动参与者

题目&#xff1a; Sql 测试用例&#xff1a; Create table If Not Exists Friends (id int, name varchar(30), activity varchar(30)); Create table If Not Exists Activities (id int, name varchar(30)); Truncate table Friends; insert into Friends (id, name, acti…

【数据结构与算法-高阶】并查集

【数据结构与算法-高阶】并查集 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;数据结构与算法&#x1f345; &#x1f33c;文章目录&#x1f33c; 1. 并查集原理 2. 并查集实现 3. 并查集应用 1. 并查集原理 在一些应用问题中&…

charAt,chartCodeAt,codePointAt,fromCodePoint,fromCharCode

生僻字的length算2,有些空格是特殊空格,比如\u3000 u3000不是全角空格&#xff0c;u3000是表意字空格&#xff08;Ideographic Space&#xff09;&#xff0c;宽度和一个表意字&#xff08;汉字&#xff09;相同。它应当被当做汉字来处理。比如&#xff0c;在一些排版中&#x…

OpenSource - License 开源项目 TrueLicense

文章目录 官网集成Demo 官网 https://truelicense.namespace.global/ https://github.com/christian-schlichtherle/truelicense 集成Demo https://github.com/christian-schlichtherle/truelicense-maven-archetype https://github.com/zifangsky/LicenseDemo https://git…

map和set(c++)

前言 在前面我们在介绍二叉搜索树时我们分别实现了一个key结构和key-val结构&#xff0c;如果我们再进一步完善这棵树&#xff0c;将二叉搜索树升级为红黑树去存储key和key-val那么我们就可以得到我们今天要介绍的主角map和set。当然了标准库的实现还是有很多需要注意的地方&a…

植物大战僵尸修改器-MFC

创建项目 创建mfc应用 基于对话框 打开资源视图下的 IDD_MFCAPPLICTION2_DIALOG 限制对话框大小 将属性中Border的值改为对话框外框 删除对话框中原有的控件 属性-外观-Caption 设置对话框标题 工具箱中拖放一个按钮 修改按钮名称 将按钮ID改为IDC_COURSE 在MFCApplication2…

k8s微服务

一 、什么是微服务 用控制器来完成集群的工作负载&#xff0c;那么应用如何暴漏出去&#xff1f;需要通过微服务暴漏出去后才能被访问 Service是一组提供相同服务的Pod对外开放的接口。 借助Service&#xff0c;应用可以实现服务发现和负载均衡。 service默认只支持4层负载均…

QT安装成功后-在创建项目时,发现仅有项目名文件

&#xff08;1&#xff09;QT安装成功后&#xff0c;发现仅有项目名文件其他可编辑文件缺失 &#xff08;2&#xff09;点击文件名左上角的感叹号显示【No kits are enabled for this project. Enable】 小编在尝试多次后发现&#xff0c;可以通过以下方式解决&#xff1a;QT软…

接着上一篇stp 实验继续

理论看上一篇&#xff0c;我们直接实验 首先找出&#xff52;&#xff4f;&#xff4f;&#xff54; 桥 很明显 &#xff53;&#xff57;&#xff11; 为&#xff52;&#xff4f;&#xff4f;&#xff54; 桥&#xff0c;所谓&#xff53;&#xff57;&#xff11;  &a…

从Hinton获得今年的诺贝尔物理学奖说起

“深度人工智能”是成都深度智谷科技旗下的人工智能教育机构订阅号&#xff0c;主要分享人工智能的基础知识、技术发展、学习经验等。此外&#xff0c;订阅号还为大家提供了人工智能的培训学习服务和人工智能证书的报考服务&#xff0c;欢迎大家前来咨询&#xff0c;实现自己的…

JavaSE——集合1:Collection接口(Iterator和增强for遍历集合)

目录 一、集合框架体系(重要) 二、集合引入 (一)集合的理解与好处 三、Collection接口 (一)Collection接口实现类的特点 (二)Collection接口常用方法 (三)Collection接口遍历元素的方式(Iterator和增强for) 1.使用Iterator(迭代器) 1.1Iterator(迭代器)介绍 1.2Itera…

OmniH2O——通用灵巧且可全身远程操作并学习的人形机器人(其前身H2O是HumanPlus的重要参考)

前言 由于我司一直在针对各个工厂、公司、客户特定的业务场景&#xff0c;做解决方案或定制开发&#xff0c;所以针对每一个场景&#xff0c;我们都会反复考虑用什么样的机器人做定制开发 于此&#xff0c;便不可避免的追踪国内外最前沿的机器人技术进展&#xff0c;本来准备…

指针函数C++

指针函数概念 指针函数在C中是一种特殊类型的函数。从本质上讲&#xff0c;它是一个函数&#xff0c;不过其返回值是一个指针类型的数据。例如&#xff0c;像int* plusfunction(int a, int b);这样的函数声明&#xff0c;plusfunction就是一个指针函数&#xff0c;它接受两个i…

【学习笔记】Linux系统基础知识4 —— date命令详解

提示&#xff1a;学习Linux系统基础命令 date 命令详解 一、前期准备 1.已经正确安装并成功进入Linux系统 说明&#xff1a;本实验采用的 Redhat 系统&#xff08;因系统不一致&#xff0c;可能部分显示存在差异&#xff09; 二、学习内容 1、date命令 1. 功能说明 date …

SpringBoot实现电子文件签字+合同系统

​ 博客主页: 南来_北往 系列专栏&#xff1a;Spring Boot实战 在现代企业中&#xff0c;合同管理和电子文件签字已成为日常运营不可或缺的一部分。为了提升效率和安全性&#xff0c;我们可以使用SpringBoot框架来实现一个电子文件签字和合同管理系统。本文将详细介绍如何…

ITMS-90899: Macs with Apple silicon support issue

文章目录 1.问题2.解决方法2.1 直接忽略这个警告邮件&#xff0c;不会影响app的正常上传2.2 通过在项目的Info.plist文件中加LSMinimumSystemVersion : 12.0 来消除警告 参考链接&#xff1a; 1.问题 ITMS-90899: Macs with Apple silicon support issue - The app isn‘t comp…

机器学习入门(一)

一、机器学习概述 1、人工智能 像人一样智能的综合与分析&#xff0c;机器模拟人类。 是一个系统&#xff0c;像人那样思考&#xff0c;像人那样理性思考。 是一个系统&#xff0c;像人那样活动&#xff0c;像人那样合理的系统 2、机器学习 让机器自动学习&#xff0c;而不…

公司防泄密软件哪个好?6款公司内部文件防泄密软件,2024超好用推荐!

企业的核心机密就如同生命之源&#xff0c;然而&#xff0c;数据泄露的风险也随之而来&#xff0c;让不少企业头疼不已。 面对这一挑战&#xff0c;选择一款高效、可靠的防泄密软件显得尤为重要。 那么&#xff0c;公司防泄密软件哪个好&#xff1f; 接下来&#xff0c;就让我…

posix接口与system V接口及其异同

POSIX接口和System V接口是用于多线程和进程间通信的两种主要编程接口。它们各自有不同的特点、功能和适用场景。以下是对这两种接口的详细介绍及其异同点。 POSIX接口 特点 标准化: POSIX&#xff08;可移植操作系统接口&#xff09;是由IEEE制定的标准&#xff0c;旨在提供统…

​ ​视觉任务大一统!图像生成,编辑,翻译三合一!全能视觉助手PixWizard来袭!

文章链接&#xff1a;https://arxiv.org/pdf/2409.15278 github链接&#xff1a;https://github.com/AFeng-x/PixWizard 亮点直击 任务统一&#xff1a;针对视觉任务的多样性&#xff0c;提出将其框架化为图像到图像的转换问题&#xff0c;并通过后处理将生成的可视化效果转化…