Android 包含一个紧急电话号码数据库,其中包含数据库版本号,以及带有应急服务类别(例如匪警、火警、急救)和相应国家/地区的紧急电话号码列表。此数据库在 Android 中用作识别和提供紧急电话号码的来源之一。
AOSP 文件
AOSP 提供的紧急电话号码数据库文件位于 packages/services/Telephony/ecc/output/eccdata
。如需了解数据库内容,请阅读 packages/services/Telephony/ecc/input/eccdata.txt
中的介绍。
已下载的数据库
从 Android 11 及更高版本开始,Android 支持已下载的紧急电话号码数据库,该数据库可通过 OTA 更新进行更新。这样可确保设备能够访问最新版本的数据库和最新信息。
更新信息
如需在紧急电话号码数据库中添加或更新信息,请在网络组件中提交 bug 来提供请求的详细信息。
如果您的请求获得批准,Android 可能会更新数据库,然后您可以将其下载到设备。Android 可能还会在 AOSP 中发布对配置的紧急电话号码数据库所做的更改。
实现
实现紧急电话号码数据库
如需实现紧急电话号码数据库,请执行以下操作:
- 构建一个遵循紧急电话号码数据库格式的文本文件:
packages/services/Telephony/ecc/conversion_toolset_v1/proto/protobuf_ecc_data.proto
。 - 使用
packages/services/Telephony/ecc/README.md
中的转换工具,将该文本文件转换为紧急电话号码数据库文件。
启用更新
如需启用已下载的紧急电话号码数据库的更新,您可以采用 OTA 更新机制来触发设备从您的服务器下载紧急电话号码数据库。在 Android 中使用分区(例如 /data/misc/emergencynumberdb
)来读取和写入已下载的紧急电话号码数据库。
如需实现已下载的紧急电话号码数据库,请使用以下系统 API:
验证
如需测试已下载的紧急电话号码数据库的实现情况,请确保已下载的数据库会作为 getEmergencyNumberList
结果的一部分返回,并且在调用 isEmergencyNumber
时,平台会将号码识别为紧急电话号码。