Baza danych numerów alarmowych w Androidzie

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 odpowiednimi krajami. Ta baza danych jest jednym ze źródeł identyfikowania i udostępniania numerów alarmowych na Androidzie.

Baza danych numerów alarmowych w Androidzie
Rysunek 1. System bazy danych numerów alarmowych na Androidzie

Plik AOSP

AOSP udostępnia plik bazy danych numerów alarmowych znajdujący się w lokalizacji packages/services/Telephony/ecc/output/eccdata. Zawartość bazy danych można odczytać w packages/services/Telephony/ecc/input/eccdata.txt.

Pobrana baza danych

Od Androida 11 wzwyż system ten 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 prośby, zgłaszając błąd w komponencie sieciowym.

Jeśli Twoja prośba zostanie zatwierdzona, Android może zaktualizować bazę danych, a Ty będziesz mieć możliwość pobrania jej na urządzenia. Android może też publikować zmiany w skonfigurowanej bazie danych numerów alarmowych w AOSP.

Implementacja

Wdrażanie bazy danych numerów alarmowych

Aby wdrożyć bazę danych numerów alarmowych:

  1. Utwórz plik tekstowy w formacie bazy danych numerów alarmowych:packages/services/Telephony/ecc/conversion_toolset_v1/proto/protobuf_ecc_data.proto
  2. Przekonwertuj plik tekstowy na plik bazy danych numerów alarmowych za pomocą narzędzia do konwersji dostępnego na stronie packages/services/Telephony/ecc/README.md.

Włączanie aktualizacji

Aby umożliwić aktualizowanie pobranej bazy danych numerów alarmowych, zastosuj mechanizm aktualizacji OTA, który będzie wywoływać pobieranie przez urządzenie bazy danych numerów alarmowych dostępnej na Twoim serwerze. Użyj partycji, np. /data/misc/emergencynumberdb, aby odczytywać i zapisywać pobraną bazę danych numerów alarmowych na Androidzie.

Aby wdrożyć pobraną bazę danych numerów alarmowych, użyj tych interfejsów API systemu:

Weryfikacja

Aby przetestować wdrożenie pobranej bazy danych numerów alarmowych, upewnij się, że pobrana baza danych jest zwracana w wyniku wywołania funkcji getEmergencyNumberList, a numery są identyfikowane jako numery alarmowe, gdy wywoływana jest funkcja isEmergencyNumber.