Số điện thoại khẩn cấp và cuộc gọi khẩn cấp

Cuộc gọi khẩn cấp là cơ bản và quan trọng đối với các thiết bị vì chúng phải hoạt động cho người dùng Android đồng thời đáp ứng các yêu cầu quy định và nhà cung cấp dịch vụ khác nhau trên toàn thế giới. Khung Android cung cấp cho người dùng trải nghiệm gọi khẩn cấp nhanh chóng và an toàn.

Android 10 cung cấp khả năng hỗ trợ cải tiến cho các chức năng gọi khẩn cấp, bảo trì và cập nhật trên nền tảng Android cục bộ bằng cách sử dụng danh sách số khẩn cấp chi tiết từ SIM, mạng, modem và cơ sở dữ liệu. Android 10 cũng hỗ trợ gọi khẩn cấp dựa trên loại dịch vụ khẩn cấp như cảnh sát, cứu hỏa hoặc xe cứu thương. Android 10 cung cấp khả năng hỗ trợ cải tiến cho các thiết bị nhiều SIM bằng cách chia sẻ các số khẩn cấp từ nhiều gói đăng ký trong API TelephonyManager.

Trong Android 10 với Radio HAL 1.4, tính năng gọi khẩn cấp được cải thiện bằng cách tách cuộc gọi khẩn cấp khỏi cuộc gọi thông thường trong giao diện HAL để tối ưu hóa đường dẫn gọi khẩn cấp và cho phép các thiết bị quay số khẩn cấp thích hợp được định cấu hình trong cơ sở dữ liệu Android.

Thực hiện

Để triển khai các chức năng gọi khẩn cấp và số khẩn cấp, hãy triển khai các API giao diện phần cứng và TelephonyManager sau đây.

API Trình quản lý điện thoại

Triển khai các API sau:

  • Triển khai getEmergencyNumberList để nhận các số khẩn cấp hợp lệ cho cuộc gọi khẩn cấp dựa trên nguồn số khẩn cấp bao gồm ngôn ngữ, thẻ SIM, mặc định, modem, cơ sở dữ liệu Android và mạng. Đối với mỗi số khẩn cấp, hãy chỉ định danh mục dịch vụ khẩn cấp tương ứng như cảnh sát, xe cứu thương và cứu hỏa.
  • Triển khai isEmergencyNumber để xác định xem số điện thoại có phải là số khẩn cấp hay không.
  • Triển khai isPotentialEmergencyNumber để xác định một số là số khẩn cấp nếu số đó có cùng chữ số bắt đầu với bất kỳ số khẩn cấp nào.

Các giá trị cho nguồn số khẩn cấp là:

  • EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING : Số lấy từ tín hiệu mạng
  • EMERGENCY_NUMBER_SOURCE_SIM : Số từ thẻ SIM
  • EMERGENCY_NUMBER_SOURCE_DATABASE : Số được lấy từ cơ sở dữ liệu được nền tảng duy trì
  • EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG : Số lấy từ cấu hình modem
  • EMERGENCY_NUMBER_SOURCE_DEFAULT : Số có sẵn theo mặc định. Các số 112 và 911 phải luôn có sẵn. 000, 08, 110, 999, 118 và 119 phải khả dụng khi không có SIM. Để biết thêm chi tiết, xem Phần 10: Cuộc gọi khẩn cấp trong 3GPP TS 22.101 .

Các giá trị cho các loại dịch vụ khẩn cấp là:

  • UNSPECIFIED : Cuộc gọi khẩn cấp chung, tất cả các danh mục
  • POLICE : cảnh sát
  • Ambulance: Xe AMBULANCE
  • FIRE_BRIGADE : Đội cứu hỏa
  • MARINE_GUARD : Cảnh sát biển
  • MOUNTAIN_RESCUE : Giải cứu trên núi
  • MIEC : Cuộc gọi điện tử được khởi tạo thủ công (MIeC)
  • AIEC : Cuộc gọi điện tử được khởi tạo tự động (AIeC)

Để biết thêm chi tiết, xem Phần 10: Cuộc gọi khẩn cấp trong 3GPP TS 22.101 .

API giao diện phần cứng

Triển khai emergencyDial trong IRadio.hal . Triển khai emergencyDialResponse trong IRadioResponse.hal để gửi phản hồi kèm theo loại phản hồi, số sê-ri và thông tin lỗi.

Để báo cáo danh sách các số khẩn cấp hiện tại, hãy triển khai currentEmergencyNumberList trong IRadioIndication.hal . Triển khai EmergencyNumber trong types.hal , chứa thông tin về số khẩn cấp bao gồm địa chỉ số, mã quốc gia di động (MCC), mã mạng di động (MNC), danh mục dịch vụ khẩn cấp , tên tài nguyên thống nhất khẩn cấp (URN) và nguồn số khẩn cấp .

Để cho biết cách xử lý cuộc gọi khẩn cấp, hãy sử dụng EmergencyCallRouting . Có thể yêu cầu cuộc gọi khẩn cấp bằng cách sử dụng định tuyến khẩn cấp hoặc định tuyến cuộc gọi thông thường nếu cần. Nếu đây là UNKNOWN , việc định tuyến sẽ được quyết định dựa trên việc triển khai.

Thẩm định

Để xác thực việc triển khai của bạn, hãy chạy các bài kiểm tra CTS và VTS sau.

xét nghiệm CTS

Kiểm tra VTS

Người giới thiệu

Để biết thêm thông tin về các thông số kỹ thuật và tiêu chuẩn liên quan, hãy xem: