声明:以下阐述皆基于L及之后的版本
一、MTK平台的两种添加紧急号码的方法:
1.紧急式呼叫:
紧急号码在XML文件中配置,文件的路径为:
..\vendor\mediatek\proprietary\external\EccList\
EccList文件夹中会包含:
ecc_list.xml ----普通紧急号码文件、
cdma_ecc_list.xml ---- CDMA紧急号码文件
以及与运营商有关的
ecc_list_OP01.xml、
ecc_list_OP09.xml、
ecc_list_OP18.xml
等对应文件,由OPTR_SPEC_SEG_DEF控制OPxx。此外还包括一个EccList.mk。
实际运行中根据EccList.mk文件定义来匹配相应的XML文件作为判断是否为紧急号码的来源。如
MTK_C2K_SUPPORT=yes,
表示支持CDMA制式,需加入cdma_ecc_list.xml。
另外,匹配的XML文件最终放置于android文件系统中system/etc目录下。
所有XML文件内容定义方法相同,下面是ecc_list.xml文件中的内容:
以紧急式添加的紧急号码,拨号时AP会下ATDEXXX;给modem。modem处理ATDE命令时,将号码直接作为紧急号码,给网络发送紧急呼叫的请求,所以以紧急式呼叫的方式添加紧急号码时modem不需要修改。2.非紧急式呼叫:
以非紧急式呼叫的方式添加紧急号码时,modem需要同步修改,修改的文件路径为:
../modem//custom/modem/common/custom_ecc.c
紧急号码需在以下数组中同步配置:
const kal_uint16 ecc_default_num[ ][ECC_CUSTOM_DEFAULT_ECC_LENGTH + 1] =
{
{0x0031, 0x0031, 0x0032, 0x0000, 1}, /* 112 */
{0x0039, 0x0031, 0x0031, 0x0000, 1}, /* 911 */
……
}
const kal_uint16 ecc_3gpp_num[ ][ECC_CUSTOM_DEFA