緊急電話號碼和緊急電話撥號

緊急電話功能是裝置的基本要件,也是重要功能,因為裝置必須為 Android 使用者提供這項服務,同時滿足全球各地的電信業者和法規要求。Android 架構可為使用者提供快速安全的緊急電話撥打體驗。

Android 10 會使用 SIM 卡、網路、數據機和資料庫中的詳細緊急電話號碼清單,加強支援本機 Android 平台中的緊急電話功能、維護和更新。Android 10 也支援根據緊急救援服務類型 (例如警察、消防隊或救護車) 撥打緊急電話。Android 10 透過 TelephonyManager API 分享多個訂閱方案的緊急電話號碼,進一步提升對多 SIM 卡裝置的支援。

在搭載 Radio HAL 1.4 的 Android 10 中,系統會在 HAL 介面中將緊急電話與一般電話分開,藉此改善緊急電話功能,以便最佳化緊急電話路徑,並允許裝置撥打 Android 資料庫中設定的適當緊急電話號碼。

實作

如要實作緊急電話和緊急電話號碼功能,請實作下列 TelephonyManager 和硬體介面 API。

TelephonyManager API

實作下列 API:

  • 實作 getEmergencyNumberList ,根據緊急電話號碼來源 (包括地區、SIM 卡、預設、數據機、Android 資料庫和網路),取得緊急電話號碼以撥打緊急電話。針對每個緊急電話號碼,指定對應的緊急救援服務類別,例如警察、救護車和消防隊。
  • 實作 isEmergencyNumber ,判斷電話號碼是否為緊急電話號碼。
  • 實作 isPotentialEmergencyNumber,判斷電話號碼是否為緊急電話號碼,方法是檢查該號碼的開頭數字是否與任何緊急電話號碼相同。

緊急電話號碼來源的值如下:

  • EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING:號碼來自網路訊號
  • EMERGENCY_NUMBER_SOURCE_SIM:號碼來自 SIM 卡
  • EMERGENCY_NUMBER_SOURCE_DATABASE:此號碼來自平台維護的資料庫
  • EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG:號碼來自數據機設定
  • EMERGENCY_NUMBER_SOURCE_DEFAULT:預設提供號碼。112 和 911 必須隨時可用。如果沒有 SIM 卡,必須可撥打 000、08、110、999、118 和 119。詳情請參閱 3GPP TS 22.101第 10 節:緊急電話

緊急服務類別的值如下:

  • UNSPECIFIED:一般緊急電話,適用於所有類別
  • POLICE:警察
  • AMBULANCE:救護車
  • FIRE_BRIGADE:消防隊
  • MARINE_GUARD:Marine Guard
  • MOUNTAIN_RESCUE:山區救援
  • MIEC:手動發起的 eCall (MIeC)
  • AIEC:自動啟動緊急呼叫 (AIeC)

詳情請參閱 3GPP TS 22.101第 10 節:緊急電話

硬體介面 API

IRadio.hal 中實作 emergencyDial。在 IRadioResponse.hal 中實作 emergencyDialResponse ,傳送含有回應類型、序號和錯誤資訊的回應。

如要回報目前的緊急電話號碼清單,請在 IRadioIndication.hal 中實作 currentEmergencyNumberList。在 types.hal 中實作 EmergencyNumber,其中包含緊急電話號碼的相關資訊,包括號碼地址、行動裝置國家/地區代碼 (MCC)、行動網路代碼 (MNC)、緊急救援服務類別、緊急情況統一資源名稱 (URN) 和緊急電話號碼來源

如要指出緊急電話的處理方式,請使用 EmergencyCallRouting。你可以視需要使用緊急電話路由或一般電話路由要求撥打緊急電話。如果是 UNKNOWN,系統會根據實作方式決定路徑。

驗證

如要驗證實作項目,請執行下列 CTS 和 VTS 測試。

CTS 測試

VTS 測試

參考資料

如要進一步瞭解相關技術規格和標準,請參閱: