Android CarrierConfig 配置问题的解决流程

devtools/2024/9/25 3:03:26/

开发步骤

确认代码路径

查看编译用的CarrierConfig APK在项目代码的path,一般是源码或者厂商定制的:

Note:一些overlay的方式是替换xml文件,CarrierConfigRes中product.xml覆盖vendor.xml的配置。

CC配置方法

配置时可根据源码支持的方式cid、mccmnc(gid)或内部定制的其他匹配方案。

AOSP支持的carrierid方式的对应关系可查看TelephonyProvider内的carrier_list.textpb文件定义,会映射运营商一组卡,不需要单独根据plmn/imsi来重复配置。

  • packages/providers/TelephonyProvider/assets/latest_carrier_id/carrier_list.textpb
<!-- Dish Boost 相关定义,Android S 还不完善,详情如下 -->carrier_id {canonical_id: 2409carrier_name: "Dishnet Wireless"carrier_attribute {mccmnc_tuple: "40448"}
}carrier_id {canonical_id: 2503carrier_name: "Boost"carrier_attribute {mccmnc_tuple: "50501"spn: "BOOST"}
}carrier_id {canonical_id: 2517carrier_name: "Dish"carrier_attribute {mccmnc_tuple: "313340"}
}
carrier_id {canonical_id: 2518carrier_name: "Boost Mobile - MNO"carrier_attribute {mccmnc_tuple: "313340"gid1: "6332"}
}
carrier_id {canonical_id: 2519carrier_name: "Boost Mobile - MVNO"carrier_attribute {mccmnc_tuple: "310240"gid1: "6432"}
}

 如上并不match以下所有卡,含多个Gid,不能直接用mccmnc配置,也无法用carrierid覆盖。

  • 313-340 (IMSI)
  • 208-09 (SFR)
  • 302-220 (TELUS)

疑问:配置cid=2517给313-340没有gid的,是否会影响其他带gid的,比如2518。

相关参考

文件介绍:Android carrier_list.textpb 和apns-conf.xml 配置文件参考-CSDN博客

debug指引:【笔记】CarrierConfig 解析加载的debug和日志分析-CSDN博客


http://www.ppmy.cn/devtools/116777.html

相关文章

C++ STL容器(三) —— 迭代器底层剖析

本篇聚焦于STL中的迭代器&#xff0c;同样基于MSVC源码。 文章目录 迭代器模式应用场景实现方式优缺点 UML类图代码解析list 迭代器const 迭代器非 const 迭代器 vector 迭代器const 迭代器非const迭代器 反向迭代器 迭代器失效参考资料 迭代器模式 首先迭代器模式是设计模式中…

[数据结构]无头单向非循环链表的实现与应用

文章目录 一、引言二、线性表的基本概念1、线性表是什么2、链表与顺序表的区别3、无头单向非循环链表 三、无头单向非循环链表的实现1、结构体定义2、初始化3、销毁4、显示5、增删查改 四、分析无头单向非循环链表1、存储方式2、优点3、缺点 五、总结1、练习题2、源代码 一、引…

Redis中的setnx的使用场景

Redis中的SETNX命令是一个非常有用的工具&#xff0c;特别是在处理分布式系统和并发控制时。SETNX是“Set if Not Exists”的缩写&#xff0c;用于设置键的值&#xff0c;但仅当键不存在时。以下是SETNX命令的一些主要使用场景&#xff1a; 1. 分布式锁 在分布式环境中&#…

【MySQL 04】数据类型

目录 1.数据类型分类 2.数值类型 2.1 tinyint 类型 2.2 bit类型 2.3 float类型 2.4decimal 3.字符串类型 3.1 char类型 3.2 varchar类型 4.日期和时间类型 6. enum和set类型 6.1.enum和set类型简介&#xff1a; 6.2.enum和set的一般使用方法 6.3.用数字的方式…

如何把pdf转换成word文档?6种转换方法看完就学会

在日常工作和学习中&#xff0c;PDF文件和Word文档可以说是两种非常常见的文件格式了。然而&#xff0c;PDF文件的不可编辑性常常让我们感到困扰&#xff0c;在遇到需要编辑修改内容的PDF文件时&#xff0c;就需要将其转换成Word文档来便于编辑修改&#xff0c;那么该怎么转换呢…

C语言在嵌入式系统中的应用有哪些?

C语言在嵌入式系统中的应用非常广泛&#xff0c;这主要得益于其高效的运行速度、优秀的代码优化能力以及丰富的函数库。以下是C语言在嵌入式系统应用中的几个关键方面&#xff1a; 1. 硬件直接访问能力 底层硬件操作&#xff1a;C语言提供了直接访问底层硬件的机制&#xff0…

产品经理面试整理-准备个人案例

在产品经理面试中,准备好个人案例可以帮助你展示你的实际工作经验和解决问题的能力。这些案例可以突出你的技能、决策过程以及如何应对挑战的能力。以下是如何准备个人案例的详细指南: 1. 选择合适的案例 1.1 成功案例 ● 选择代表性的项目

Spring Tx事务 总结

1.简介 Spring Tx事务是对Spring AOP的再次封装,事务主要使用场景是处理数据库提交数据时&#xff0c;异常处理中需要回滚的情况&#xff0c;通过Spring Tx事务可以简化该操作。 2.代码 如果要使用事务&#xff0c;需要在pom.xml中加入以下依赖项: <dependency><…