Android zawiera bazę danych numerów alarmowych, która zawiera numer wersji bazy danych oraz listę numerów alarmowych z kategoriami służb ratunkowych (np. policja, straż pożarna, pogotowie ratunkowe) i odpowiednim krajem. Ta baza danych to jedno ze źródeł danych umożliwiających identyfikację i dostarczanie numerów alarmowych w Androidzie.
Plik AOSP
AOSP udostępnia plik bazy danych numerów alarmowych znajdujący się w folderze packages/services/Telephony/ecc/output/eccdata
. Zawartość bazy danych można odczytać w pliku packages/services/Telephony/ecc/input/eccdata.txt
.
Pobrana baza danych
Od Androida 11 i nowszych system obsługuje pobraną bazę danych numerów alarmowych, którą można aktualizować za pomocą aktualizacji OTA. Dzięki temu urządzenia mają dostęp do najnowszej wersji bazy danych i najnowszych informacji.
Aktualizuj informacje
Aby dodać lub zaktualizować informacje w bazie danych numerów alarmowych, podaj szczegóły swojej prośby, zgłaszając błąd w komponencie Networking.
Jeśli Twoja prośba zostanie zatwierdzona, Android może zaktualizować bazę danych. Następnie możesz pobrać aplikację na urządzenia. Android może też publikować zmiany w skonfigurowanej bazie danych numerów alarmowych w AOSP.
Implementacja
Wdrożenie bazy danych numerów alarmowych
Aby wdrożyć bazę danych 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 z numerami alarmowymi za pomocą narzędzia do konwersji dostępnego pod adresem
packages/services/Telephony/ecc/README.md
.
Włącz aktualizacje
Aby umożliwić aktualizację pobranej bazy danych numerów alarmowych, zastosuj mechanizm aktualizacji OTA, który spowoduje pobranie przez urządzenie bazy danych numerów alarmowych dostępnej na serwerze. Użyj partycji, takiej jak /data/misc/emergencynumberdb
, aby odczytać i zapisać pobraną bazę danych z numerami alarmowymi na Androidzie.
Aby zaimplementować pobraną bazę danych numerów alarmowych, użyj tych interfejsów API:
Weryfikacja
Aby przetestować implementację pobranej bazy danych numerów alarmowych, upewnij się, że pobrana baza danych jest zwracana jako część wyniku funkcji getEmergencyNumberList
, a numery są rozpoznawane jako numery alarmowe, gdy wywołana zostanie funkcja isEmergencyNumber
.