Tous les appareils mobiles vendus en Inde à compter du 1er janvier 2017 doivent fournir un bouton d'assistance pour répondre aux exigences du département indien des Télécommunications (DoT) Pour répondre à ces exigences réglementaires, Android inclut une référence la fonctionnalité d'Affordance d'urgence pour activer un bouton d'assistance Appareils Android
Cette fonctionnalité est activée par défaut dans Android 8.0 et versions ultérieures, mais doivent être corrigés dans les builds existants des versions antérieures. Ce est destinée exclusivement aux appareils vendus sur le marché indien, mais peut être incluse sur tous les appareils vendus dans le monde entier, car cette fonctionnalité n'a aucun effet en dehors de l'Inde.
Exemples et source
La fonctionnalité d'Affordance d'urgence est mise en œuvre dans le projet Open Source d'Android. Projet (AOSP) frameworks/base projet. Il est disponible dans la branche principale et est activé par défaut dans Android 8.0 et versions ultérieures.
Cette fonctionnalité est actuellement disponible dans les branches et commits suivants. Ces informations sont fournies pour permettre aux fabricants d'appareils de corriger facilement les modifications nécessaires dans leurs builds existants. Les fabricants d'appareils qui souhaitent implémenter la fonctionnalité d' affordance d'urgence de référence AOSP. les commits des branches applicables dans leurs propres compilations.
Branch | Commits |
---|---|
principal | E0C3C66
Ajout de la fonctionnalité d' affordance d'urgence 42a4338. Ajout de traductions pour la chaîne d'action d'urgence 4df8d64. Correction d'un problème qui entraînait l'affichage de l' affordance d'urgence sur les tablettes |
Nougat Dev | E6680D9
Ajout de la fonctionnalité d' affordance d'urgence 95e1865 Ajout de traductions pour la chaîne d'action d'urgence a70bb89 Correction d'un problème qui entraînait l'affichage de l' affordance d'urgence sur les tablettes |
marshmallow-dev | cd22634
Ajout de la fonctionnalité d' affordance d'urgence 13f51c6. Ajout de traductions pour la chaîne d'action d'urgence 6531666 Correction d'un problème qui entraînait l'affichage de l' affordance d'urgence sur les tablettes |
sucette-mr1-dev | 5fbc86b
Ajout de la fonctionnalité d' affordance d'urgence 1b60879. Ajout de traductions pour la chaîne d'action d'urgence D74366f Correction d'un problème qui entraînait l'affichage de l' affordance d'urgence sur les tablettes |
Implémentation
Cette fonctionnalité n'apporte aucune modification aux API exposées via le kit de développement logiciel (SDK, Software Development Kit) Android. Lorsqu'il est activé, propose deux déclencheurs qui peuvent appeler le 112, ce qui est le seul numéro d'urgence à utiliser en Inde, du département des Télécommunications.
Un appel d'urgence est émis par:
Appuyez de manière prolongée sur le bouton URGENCE de la écran de verrouillage |
Appuyez sur l'option Urgence dans le Menu d'actions global |
---|---|
|
|
Cette fonctionnalité présente les composants internes suivants:
- Gestionnaire d'urgenceAffordance
frameworks/base/core/java/com/android/internal/policy/EmergencyAffordanceManager.java
- Service d'urgenceAffordance
frameworks/base/services/core/java/com/android/server/emergency/EmergencyAffordanceService.java
Gestionnaire d'urgenceAffordance
EmergencyAffordanceManager fournit une API interne permettant d'utiliser l'événement Fonctionnalité Affordance. Elle fournit des méthodes pour lancer l'appel d'urgence et au moment de l'exécution si la fonctionnalité doit être activée.
void performEmergencyCall()
Permet de passer un appel d'urgence.boolean needsEmergencyAffordance()
Détermine si la caractéristique doit être actif.
La fonctionnalité peut être désactivée de manière permanente au moment de la compilation en modifiant la
Constante EmergencyAffordanceManager.ENABLED
sur false
.
needsEmergencyAffordance()
renverra donc toujours "false"
et empêcher le démarrage de EmergencyAffordanceService
.
Service d'urgenceAffordance
EmergencyAffordanceService
est un service système qui surveille
le mobile country code (MCC) de tous les réseaux cellulaires détectés et le MCC
des cartes SIM installées. Si l'une des cartes SIM installées ou détecte
les réseaux cellulaires ont un MCC correspondant à l'un des MCC indiens (404 ou 405), puis le
la fonctionnalité sera activée. Cela signifie que la fonctionnalité peut être activée en Inde même si
si aucune carte SIM n'est présente. On part du principe que le réseau mobile
l'enregistrement des appels d'urgence, même si aucune carte SIM n'est installée. La fonctionnalité
restera activé jusqu'à ce qu'une carte SIM non indienne soit installée et qu'aucune des cartes
ont un CM correspondant.
Les ressources et paramètres suivants ont une incidence sur le comportement de la fonctionnalité d'urgence Fonctionnalité Affordance. Si le type de configuration est:
- Ressource : il s'agit d'une ressource interne définie dans
frameworks/base/core/res/res/values/config.xml
- Paramètre : il s'agit d'un paramètre stocké dans les paramètres du système. un fournisseur de services agréé.
Type de configuration | Nom | Description |
---|---|---|
Ressource | config_numéro_appel_d'urgence | Numéro de téléphone composé automatiquement lors de l'appel d'urgence
lancée. Type: chaîne Par défaut: 112 |
Ressource | config_emergency_mcc_codes | Tableau d'entiers répertoriant les MCC dans lesquels la fonctionnalité doit être active. Type: tableau d'entiers Valeur par défaut: {404,405} |
Paramètre | numéro_affordance_d'urgence | Remplacement du paramètre général par le numéro à appeler pour l'appel d'urgence
affordance. Cela n'a d'effet que sur les images de compilation débogables (c'est-à-dire
est userdebug ou eng). Elle est destinée uniquement à des fins de test. Type: chaîne Valeur par défaut: non définie |
Paramètre | affordance_d'urgence_force | Paramètre global, si l' affordance d'urgence doit être affichée indépendamment
de l'état de l'appareil. Elle est destinée uniquement à des fins de test. Type: booléen (1 ou 0) Par défaut: non définie --> 0 |
Activer les appels d'urgence vers le 112
La fonctionnalité d' affordance d'urgence connecte l'appel à l'aide de l'appel d'urgence afin que l'appel puisse être mis en relation lorsque l'écran de verrouillage est actif. La le clavier d'urgence ne connecte les appels qu'à la liste de numéros fournie par le d'une couche d'interface radio (RIL, Radio Interface Layer) via la propriété système:
ril.ecclist
lorsqu'aucune carte SIM n'est installée.ril.ecclistSimSlotNumber
lorsqu'une carte SIM est insérée etSimSlotNumber
est l'ID d'emplacement de l'emplacement abonné.
Les fabricants d'appareils qui utilisent la fonctionnalité d' affordance d'urgence doivent s'assurer que : les appareils en Inde activent toujours le numéro d'urgence 112 dans la RIL.
Validation
Lors des tests sur une version débogable, le numéro appelé peut être modifié en exécutant la commande suivante:
adb shell settings put global emergency_affordance_number NUMBER_TO_CALL
Bien que ce paramètre puisse être défini sur une version d'utilisateur normale, il sera ignoré. Pour composer l'appel, le numéro doit figurer dans la liste des appels d'urgence numéros fournis par le RIL. Vous pouvez définir temporairement ce paramètre à l'aide des éléments suivants : exécutée à partir d'une interface système racine sur un appareil userdebug:
setprop ril.ecclist "$(getprop ril.ecclist),NUMBER_TO_CALL"
La commande suivante peut également être utilisée pour forcer l'Affordance d'urgence même en l'absence de réseau mobile indien ou si une carte SIM indienne est en cours d'insertion.
adb shell settings put global force_emergency_affordance 1
Nous vous recommandons de tester au minimum les scénarios suivants:
- Une fois l'option activée, appuyer de manière prolongée sur le bouton URGENCE l'écran de verrouillage (figure 1) appelle le numéro d'urgence spécifié.
- Une fois activé, l'élément Urgence de l'action globale Le menu est présent. Si vous appuyez dessus, vous appelez l'urgence spécifiée numéro.
- La fonctionnalité n'est pas activée en l'absence d'une a détecté un réseau mobile indien sur lequel une carte SIM non indienne est installée.
- La fonctionnalité est activée sur l'appareil lorsqu'une carte SIM indienne est installée, quels que soient les réseaux mobiles détectés.
- La fonctionnalité est activée sur l'appareil en présence de un réseau mobile indien, quelle que soit les cartes SIM installées.
Si un appareil est compatible avec plusieurs cartes SIM, les tests doivent garantir que la détection du MCC de la carte SIM fonctionne correctement dans chaque emplacement de carte SIM. L'urgence La fonctionnalité Affordance n'est pas régie par la compatibilité Android. Il n'existe donc Elle est testée par la suite de tests de compatibilité (CTS).
Questions fréquentes
Q. Le numéro d'urgence 112 n'a pas encore été mis en service dans Inde. Doit-il quand même être utilisé ?
En Inde, le numéro 112 sera utilisé pour répondre aux questions de sécurité publique d'intervention d'urgence (PSAP, Integrated Emergency Communications and Response) Google Cloud (IECRS). Jusqu'à ce que le CRAU soit mis en service, tous les appels vers le 112 seront acheminés au numéro d'urgence actuel 100 (bien que ce soit la responsabilité opérateur, et non Android).
Q. Qu'en est-il des autres déclencheurs tels que la triple pression le bouton Marche/Arrêt ?
Les fabricants d'appareils peuvent choisir d'implémenter d'autres déclencheurs. Toutefois, tandis que le département des Télécommunications approuve l'appui trois fois sur le bouton Marche/Arrêt physique, déclencheur n'est pas pris en charge dans la mise en œuvre de référence AOSP car certaines applications couramment utilisées (comme l'application Appareil photo) utilisent les gestes du bouton Marche/Arrêt. qui incluent l’appui répété sur le bouton Marche/Arrêt. De telles applications peuvent avec le clavier d'urgence, sans quoi l'utilisateur risque de déclencher accidentellement bouton d'appel d'urgence tout en essayant de déclencher des actions dans ces applications.