Android zawiera bazę danych numerów alarmowych, która zawiera numer wersji bazy danych oraz listę numerów telefonów alarmowych z kategoriami służb ratunkowych (na przykład policja, straż pożarna, pogotowie ratunkowe) i odpowiednim krajem. Ta baza danych jest jednym ze źródeł identyfikacji i podawania numerów alarmowych w systemie Android.
plik AOSP
AOSP udostępnia plik bazy danych numerów alarmowych zlokalizowany w packages/services/Telephony/ecc/output/eccdata
. Zawartość bazy danych można odczytać w packages/services/Telephony/ecc/input/eccdata.txt
.
Pobrana baza danych
Od wersji Androida 11 i nowszych Android obsługuje pobraną bazę danych numerów alarmowych, którą można aktualizować za pomocą aktualizacji OTA. Dzięki temu urządzenia mają pewność dostępu do najnowszej wersji bazy danych i najświeższych informacji.
Aktualizowanie informacji
Aby dodać lub zaktualizować informacje w bazie numerów alarmowych, podaj szczegóły swojego żądania, zgłaszając błąd w komponencie Sieć .
Jeśli Twoja prośba zostanie zatwierdzona, Android może zaktualizować bazę danych i będzie można pobrać ją na urządzenia. Android może także opublikować zmiany w skonfigurowanej bazie numerów alarmowych w AOSP.
Realizacja
Wdrożenie bazy numerów alarmowych
Aby wdrożyć bazę numerów alarmowych:
- Utwórz plik tekstowy zgodny z formatem bazy danych numerów alarmowych:
packages/services/Telephony/ecc/conversion_toolset_v1/proto/protobuf_ecc_data.proto
. - Przekonwertuj plik tekstowy na plik bazy danych numerów alarmowych, korzystając z narzędzia do konwersji dostępnego pod
packages/services/Telephony/ecc/README.md
.
Włączanie aktualizacji
Aby umożliwić aktualizację pobranej bazy numerów alarmowych, zastosuj mechanizm aktualizacji OTA, który spowoduje, że urządzenie pobierze bazę danych numerów alarmowych dostępną z Twojego serwera. Użyj partycji, takiej jak /data/misc/emergencynumberdb
, aby czytać i zapisywać pobraną bazę danych numerów alarmowych w systemie Android.
Aby zaimplementować pobraną bazę numerów alarmowych, należy skorzystać z następujących systemowych API:
Walidacja
Aby przetestować implementację pobranej bazy danych numerów alarmowych, upewnij się, że pobrana baza danych została zwrócona jako część wyniku getEmergencyNumberList
, a numery są identyfikowane jako numery alarmowe po wywołaniu isEmergencyNumber
.