A partire dal 1° gennaio 2017, tutti i dispositivi mobili venduti in India devono fornire un pulsante di emergenza per soddisfare i requisiti del Dipartimento delle telecomunicazioni indiano (DoT). Per soddisfare questi requisiti normativi, Android include un riferimento della funzionalità di accessibilità per le emergenze per attivare un pulsante di emergenza Dispositivi Android
Questa funzionalità è attiva per impostazione predefinita in Android 8.0 e versioni successive, ma deve essere applicata una patch a build esistenti di release precedenti. Questo è destinata esclusivamente ai dispositivi venduti sul mercato indiano, ma può essere inclusa in tutti i dispositivi venduti in tutto il mondo, in quanto la funzionalità non ha effetto fuori dall'India.
Esempi e fonte
La funzionalità Emergency Affordance è implementata nell'open source di Android Progetto (AOSP) framework/base progetto. È disponibile nel ramo principale ed è abilitata per impostazione predefinita in Android 8.0 e versioni successive.
Questa funzionalità è attualmente disponibile nelle rami e nei commit seguenti. Queste informazioni vengono fornite per consentire ai produttori di patch facilmente le modifiche necessarie nelle build esistenti. I produttori di dispositivi che vogliono implementare la funzionalità di consulenza di emergenza di AOSP, dei rami applicabili nelle proprie build.
Branch | Commit |
---|---|
principale | e0c3c66
Aggiunta la funzionalità di invito di emergenza 42a4338 Sono state aggiunte traduzioni per la stringa di azioni di emergenza 4df8d64 Risolto un problema per cui l'invito di emergenza veniva visualizzata sui tablet |
sviluppo-torrone | e6680d9
Aggiunta la funzionalità di invito di emergenza 95e1865 Sono state aggiunte traduzioni per la stringa di azioni di emergenza a70bb89 Risolto un problema per cui l'invito di emergenza veniva visualizzata sui tablet |
marshmallow-dev | cd22634
Aggiunta la funzionalità di invito di emergenza 13f51c6 Sono state aggiunte traduzioni per la stringa di azioni di emergenza 6531666 Risolto un problema per cui l'invito di emergenza veniva visualizzata sui tablet |
lecca-lecca-mr1-dev | 5fbc86
Aggiunta la funzionalità di invito di emergenza 1b60879 Sono state aggiunte traduzioni per la stringa di azioni di emergenza d74366f Risolto un problema per cui l'invito di emergenza veniva visualizzata sui tablet |
Implementazione
La funzionalità di convenienza di emergenza non apporta modifiche alle API esposte tramite l'SDK (Software Development Kit) Android. Quando questa opzione è abilitata e attivata, mette a disposizione due attivatori che possono avviare una chiamata di emergenza al 112, è il numero di emergenza unico che deve essere usato in India e richiesto dall'autorità normative DoT.
Una chiamata di emergenza viene avviata da:
Premere a lungo il pulsante EMERGENCY sulla schermata di blocco |
Toccando l'opzione Emergenza nella Menu Azioni globale |
---|---|
|
|
Questa funzionalità introduce i seguenti componenti interni:
- GestoreAffordancediemergenza
frameworks/base/core/java/com/android/internal/policy/EmergencyAffordanceManager.java
- Servizioa basso costodiemergenza
frameworks/base/services/core/java/com/android/server/emergency/EmergencyAffordanceService.java
GestoreAffordancediemergenza
EmergencyAffordanceManager fornisce un'API interna per utilizzare il servizio Funzionalità di convenienza. Fornisce metodi per avviare la chiamata di emergenza e se la funzionalità deve essere abilitata in fase di runtime.
void performEmergencyCall()
. Avvia una chiamata di emergenza.boolean needsEmergencyAffordance()
. Determina se la caratteristica devono essere attivi.
La funzionalità può essere disabilitata in modo permanente al momento della creazione modificando la
Costante di EmergencyAffordanceManager.ENABLED
a false
.
In questo modo needsEmergencyAffordance()
restituirà sempre false
ed evitare l'avvio di EmergencyAffordanceService
.
Servizioa basso costodiemergenza
EmergencyAffordanceService
è un servizio di sistema che monitora
Il Mobile Country Code (Centro clienti) di tutte le reti mobili rilevate e del Centro clienti
delle schede SIM installate. Se sono state rilevate delle schede SIM installate o
che hanno un Centro clienti corrispondente a uno dei Centri clienti indiani (404 o 405), quindi
verrà attivata. Ciò significa che la funzionalità può essere attivata in India anche se
nessuna scheda SIM presente. Si presume che la rete mobile consenta
registrazione per le chiamate di emergenza anche senza una scheda SIM installata. La funzionalità
rimarrà attiva finché non verrà installata una SIM non indiana e nessuno dei
a un Centro clienti corrispondente.
Le seguenti risorse e impostazioni influiscono sul comportamento dell'emergenza Funzionalità di convenienza. Se il tipo di configurazione è:
- Risorsa, si tratta di una risorsa interna definita in
frameworks/base/core/res/res/values/config.xml
. - Impostazione, un'impostazione memorizzata nelle impostazioni di sistema o il provider di servizi di terze parti.
Tipo di configurazione | Nome | Descrizione |
---|---|---|
Risorsa | numero_chiamata_di_emergenza_configurazione | Il numero di telefono composto automaticamente quando viene effettuata la chiamata di emergenza
in fase di avvio. Tipo: stringa Valore predefinito: 112 |
Risorsa | codici_mcc_config_emergency | Un array di numeri interi che elenca i Centri clienti in cui deve essere attiva la funzionalità. Tipo: array di numeri interi Valore predefinito: {404,405} |
Impostazione | numero_affordance_emergenza | Override delle impostazioni globali con il numero da chiamare con l'emergenza
invito. Ha effetto solo sulle immagini build di cui è possibile eseguire il debug (ovvero
è userdebug o eng). Questa funzionalità è pensata solo per i test. Tipo: stringa Impostazione predefinita: non impostata |
Impostazione | forza_emergency_affordance | Impostazione globale, se l'invito di emergenza deve essere mostrato indipendentemente
dello stato del dispositivo. Questa funzionalità è pensata solo per i test. Tipo: booleano (1 o 0) Valore predefinito: non impostato --> 0 |
Attiva le chiamate di emergenza al 112
La funzionalità di invito di emergenza connette la chiamata utilizzando il servizio di emergenza tastiera, per connettere la chiamata quando è attiva la schermata di blocco. La chiamata di emergenza connette le chiamate soltanto all'elenco di numeri fornito Radio Interface Layer (RIL) tramite la proprietà di sistema:
ril.ecclist
se non è installata alcuna SIM.ril.ecclistSimSlotNumber
quando viene inserita una SIM eSimSlotNumber
è l'ID slot del campo sottoscrittore.
I produttori di dispositivi che utilizzano la funzione di invito di emergenza devono garantire che in India sia sempre abilitato il 112 come numero di emergenza nel RIL.
Convalida
Durante il test su una build di cui è possibile eseguire il debug, il numero chiamato può essere modificato con il seguente comando:
adb shell settings put global emergency_affordance_number NUMBER_TO_CALL
Questa impostazione può essere configurata su una normale build dell'utente, ma verrà ignorata. Per connettere la chiamata, il numero deve essere nell'elenco dei contatti di emergenza numeri forniti dal RIL. Questa opzione può essere impostata temporaneamente utilizzando: eseguito da una shell root su un dispositivo userdebug:
setprop ril.ecclist "$(getprop ril.ecclist),NUMBER_TO_CALL"
Il seguente comando può essere usato anche per forzare l'infrastruttura attivare anche in assenza di una rete mobile indiana rilevata o una scheda SIM indiana che viene inserita.
adb shell settings put global force_emergency_affordance 1
Ti consigliamo di verificare almeno i seguenti casi:
- Una volta attivata, premi a lungo il pulsante EMERGENCY sul la schermata di blocco (Figura 1) avvia una chiamata al numero di emergenza specificato.
- Dopo l'attivazione, la voce Emergenza sull'azione globale Il menu è presente e il tocco avvia una chiamata all'emergenza specificata numero.
- La funzionalità non viene attivata in assenza di un ha rilevato una rete mobile indiana con una scheda SIM non indiana installata.
- La funzionalità viene attivata sul dispositivo quando una SIM indiana sia installata indipendentemente dalle reti mobili rilevate.
- La funzionalità viene attivata sul dispositivo in presenza di Una rete mobile indiana, indipendentemente dalle schede SIM installate.
Se un dispositivo supporta più schede SIM, il test dovrebbe garantire che il rilevamento Centro clienti SIM funzioni correttamente in ogni slot della SIM. L'emergenza La funzionalità di convenienza non è regolata dalla compatibilità con Android, quindi non ci sono di Compatibility Test Suite (CTS).
Domande frequenti
D. Il numero di emergenza 112 non è stato ancora incaricato in in India. Deve essere ancora utilizzato?
112 è il numero che verrà utilizzato in India come risposta di sicurezza pubblica punto di accesso (PSAP, Integrated Emergency Communications and Response) sistemi (IECRS). Fino a quando la PSAP non viene messa in servizio, tutte le chiamate al 112 verranno instradate al numero di emergenza 100 esistente (sebbene sia responsabilità del operatore, non Android).
D. E per quanto riguarda gli altri fattori scatenanti, come la pressione tripla il tasto di accensione?
I produttori di dispositivi possono scegliere di implementare altri attivatori. Tuttavia, mentre il Dipartimento della Difesa indiano approva il triplo tocco del tasto di accensione, il trigger non è supportato nell'implementazione del riferimento AOSP Alcune app molto utilizzate, ad esempio l'app Fotocamera, usano i gesti del tasto di accensione che includono tocchi ripetuti del tasto di accensione. Queste app potrebbero interferire con la tastiera di emergenza o l'utente potrebbe attivare pulsante di emergenza mentre provi ad attivare azioni in queste app.