Le chiamate di emergenza sono fondamentali e critiche per i dispositivi perché devono funzionare per gli utenti Android soddisfacendo al tempo stesso i vari requisiti normativi e di operatore telefonico in tutto il mondo. Il framework Android offre agli utenti un'esperienza di chiamata di emergenza veloce e sicura.
Android 10 fornisce un supporto migliorato per le funzioni di chiamata di emergenza, la manutenzione e gli aggiornamenti nella piattaforma Android locale utilizzando un elenco dettagliato di numeri di emergenza dalla SIM, dalla rete, dal modem e dal database. Android 10 supporta anche le chiamate di emergenza in base al tipo di servizi di emergenza come polizia, vigili del fuoco o ambulanza. Android 10 fornisce un supporto migliorato per i dispositivi multi-SIM condividendo i numeri di emergenza di più abbonamenti nell'API TelephonyManager.
In Android 10 con Radio HAL 1.4, le chiamate di emergenza sono state migliorate separando le chiamate di emergenza dalle chiamate normali nell'interfaccia HAL per ottimizzare il percorso delle chiamate di emergenza e consentendo ai dispositivi di comporre il numero di emergenza appropriato configurato nel database Android.
Implementazione
Per implementare le funzioni delle chiamate di emergenza e dei numeri di emergenza, implementare le seguenti API di interfaccia hardware e TelephonyManager
.
API di TelephonyManager
Implementa le seguenti API:
- Implementa
getEmergencyNumberList
per ottenere numeri di emergenza validi per le chiamate di emergenza in base all'origine del numero di emergenza, incluse impostazioni locali, schede SIM, impostazione predefinita, modem, database Android e rete. Per ciascun numero di emergenza, specificare la categoria del servizio di emergenza corrispondente come polizia, ambulanza e vigili del fuoco. - Implementare
isEmergencyNumber
per identificare se un numero di telefono è un numero di emergenza. - Implementare
isPotentialEmergencyNumber
per identificare un numero come numero di emergenza se ha le stesse cifre iniziali di uno qualsiasi dei numeri di emergenza.
I valori per le origini dei numeri di emergenza sono:
-
EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING
: il numero proviene dal segnale di rete -
EMERGENCY_NUMBER_SOURCE_SIM
: il numero proviene dalla scheda SIM -
EMERGENCY_NUMBER_SOURCE_DATABASE
: il numero proviene dal database gestito dalla piattaforma -
EMERGENCY_NUMBER_SOURCE_MODEM_CONFIG
: il numero proviene dalla configurazione del modem -
EMERGENCY_NUMBER_SOURCE_DEFAULT
: il numero è disponibile per impostazione predefinita. I numeri 112 e 911 devono essere sempre disponibili. 000, 08, 110, 999, 118 e 119 devono essere disponibili quando non è presente alcuna SIM. Per maggiori dettagli, vedere la Sezione 10: Chiamate di emergenza in 3GPP TS 22.101 .
I valori per le categorie dei servizi di emergenza sono:
-
UNSPECIFIED
: Chiamata di emergenza generale, tutte le categorie -
POLICE
: Polizia -
AMBULANCE
: Ambulanza -
FIRE_BRIGADE
: Vigili del fuoco -
MARINE_GUARD
: Guardia marina -
MOUNTAIN_RESCUE
: Soccorso alpino -
MIEC
: eCall avviata manualmente (MIeC) -
AIEC
: eCall avviata automaticamente (AIeC)
Per maggiori dettagli, vedere la Sezione 10: Chiamate di emergenza in 3GPP TS 22.101 .
API dell'interfaccia hardware
Implementare emergencyDial
in IRadio.hal
. Implementa emergencyDialResponse
in IRadioResponse.hal
per inviare una risposta con tipo di risposta, numero di serie e informazioni sull'errore.
Per segnalare l'elenco corrente dei numeri di emergenza, implementare currentEmergencyNumberList
in IRadioIndication.hal
. Implementare EmergencyNumber
in types.hal
, che contiene informazioni sul numero di emergenza incluso l'indirizzo del numero, il codice del paese mobile (MCC), il codice della rete mobile (MNC), la categoria del servizio di emergenza , il nome della risorsa uniforme di emergenza (URN) e la fonte del numero di emergenza .
Per indicare come viene gestita una chiamata di emergenza, utilizzare EmergencyCallRouting
. È possibile richiedere una chiamata di emergenza utilizzando l'instradamento di emergenza o l'instradamento normale delle chiamate, a seconda delle necessità. Se questo è UNKNOWN
, il routing viene deciso in base all'implementazione.
Validazione
Per convalidare la tua implementazione, esegui i seguenti test CTS e VTS.
Prove CTS
Prove VTS
Riferimenti
Per ulteriori informazioni sulle specifiche tecniche e sugli standard correlati, consultare:
- 3GPP TS 22.101 , Sezione 10: Chiamate di emergenza
- 3GPP TS 24.008 , Sezione 9.2.13.4: Elenco dei numeri di emergenza
- 3GPP TS 23.167 , Sezione 6: Descrizione funzionale
- 3GPP TS 24.503 , Sezione 5.1.6.8.1: Generale
- RFC 5031 : Un Uniform Resource Name (URN) per servizi di emergenza e altri servizi noti