Hindistan'da 1 Ocak 2017'den itibaren satılan tüm mobil cihazlar, Hindistan Telekomünikasyon Dairesi'nin (DoT) şartlarını karşılamak için panik butonu sağlamalıdır. Android, bu yasal şartları karşılamak için Android cihazlarda panik düğmesini etkinleştirmek üzere Acil Durum Kolaylığı özelliğinin referans uygulamasını içerir.
Bu özellik, Android 8.0 ve sonraki sürümlerde varsayılan olarak etkindir ancak önceki sürümlerin mevcut derlemelerine yama olarak eklenmelidir. Bu özellik yalnızca Hindistan pazarında satılan cihazlara yöneliktir ancak Hindistan dışında herhangi bir etkisi olmadığından dünya genelinde satılan tüm cihazlara dahil edilebilir.
Örnekler ve kaynak
Acil Durumda Erişim özelliği, Android Açık Kaynak Projesi (AOSP) frameworks/base projesinde uygulanır. Bu özellik, Android'in en son sürümünde kullanılabilir ve Android 8.0 ile sonraki sürümlerde varsayılan olarak etkindir.
Bu özellik aşağıdaki dallarda ve commit'lerde kullanılabilir. Bu bilgiler, cihaz üreticilerinin gerekli değişiklikleri mevcut derlemelerine uygulamalarını sağlamak için sağlanır. AOSP referans Acil Durum Kolaylığı özelliğini uygulamak isteyen cihaz üreticileri, ilgili dallardaki commit'leri kendi derlemelerine ekleyebilir.
Tablo 1. AOSP referans Acil Durum Özelliği için seçilenler
| Şube | Kaydetmeler |
|---|---|
| android-latest-release | e0c3c66
Acil durum özelliği eklendi 42a4338 Acil durum işlemi dizesi için çeviriler eklendi 4df8d64 Acil durum özelliğinin tabletlerde gösterilmesine neden olan sorun düzeltildi. |
| nougat-dev | e6680d9
Acil durum eklentisi özelliği eklendi 95e1865 Acil durum işlemi dizesi için çeviriler eklendi a70bb89 Acil durum eklentisi özelliğinin tabletlerde gösterilmesine neden olan sorun düzeltildi |
| marshmallow-dev | cd22634
Acil durum özelliği eklendi 13f51c6 Acil durum işlemi dizesi için çeviriler eklendi 6531666 Acil durum özelliğinin tabletlerde gösterilmesiyle ilgili sorun düzeltildi |
| lollipop-mr1-dev | 5fbc86b
Acil Durum Özelliği eklendi 1b60879 Acil durum işlemi dizesi için çeviriler eklendi d74366f Acil Durum Özelliği'nin tabletlerde gösterilmesine neden olan sorun düzeltildi. |
Uygulama
Acil durum kolaylığı özelliği, Android Yazılım Geliştirme Kiti (SDK) aracılığıyla kullanıma sunulan API'lerde herhangi bir değişiklik yapmaz. Etkinleştirilip kullanıma sunulduğunda bu özellik, Hindistan'da kullanılacak ve Hindistan DoT yönetmelikleri tarafından zorunlu kılınan tek acil durum numarası olan 112'ye acil durum araması başlatabilecek iki tetikleyici sağlar.
Acil durum araması şu durumlarda başlatılır:
| Kilit ekranında ACİL DURUM düğmesine uzun basma |
Genel İşlem Menüsü'nde Acil Durum seçeneğine dokunma |
|---|---|
Şekil 1. Kilit ekranındaki ACİL DURUM düğmesi. |
Şekil 2. Global İşlem Menüsü'nde (güç tuşuna uzun basılarak erişilir) acil durum işlemi. |
Bu özellik aşağıdaki dahili bileşenleri kullanıma sunar:
EmergencyAffordanceManagerframeworks/base/core/java/com/android/internal/policy/EmergencyAffordanceManager.javaEmergencyAffordanceServiceframeworks/base/services/core/java/com/android/server/emergency/EmergencyAffordanceService.java
EmergencyAffordanceManager
EmergencyAffordanceManager, Emergency Affordance özelliğini kullanmak için dahili bir API sağlar. Acil durum araması başlatma ve özelliğin etkinleştirilip etkinleştirilmeyeceğini çalışma zamanında sorgulama yöntemleri sağlar.
void performEmergencyCall(). Acil durum araması başlatır.boolean needsEmergencyAffordance(). Özelliğin etkin olup olmayacağını belirler.
Bu özellik, derleme sırasında EmergencyAffordanceManager.ENABLED sabitini false olarak değiştirilerek kalıcı olarak devre dışı bırakılabilir.
Bu, needsEmergencyAffordance() uygulamasının her zaman false döndürmesine ve EmergencyAffordanceService uygulamasının başlatılmasını engellemesine neden olur.
EmergencyAffordanceService
EmergencyAffordanceService, algılanan tüm hücresel ağların Mobil Ülke Kodunu (MCC) ve yüklü SIM kartların MCC'sini izleyen bir sistem hizmetidir. Yüklü SIM kartlardan veya algılanan hücresel ağlardan herhangi birinin Hindistan'ın MCC'lerinden (404 veya 405) biriyle eşleşen bir MCC'si varsa özellik etkinleştirilir. Bu nedenle, SIM kart olmasa bile Hindistan'da bu özellik etkinleştirilebilir. Mobil ağın, SIM kart takılı olmasa bile acil durum aramaları için kayda izin verdiği varsayılır. Hindistan dışı bir SIM kart takılana ve algılanan ağların hiçbirinde eşleşen bir MCC bulunmayana kadar özellik etkin kalır.
Aşağıdaki kaynaklar ve ayarlar, Acil Durum Fırsatı özelliğinin davranışını etkiler. Yapılandırma türü:
- Kaynak:
frameworks/base/core/res/res/values/config.xmliçinde tanımlanan bir dahili kaynak. - Ayar: Sistem ayarları sağlayıcısında depolanan bir ayar.
Tablo 2. Acil durum kolaylığı özelliğinin davranışını etkileyen ayarlar
| Yapılandırma Türü | Ad | Açıklama |
|---|---|---|
| Kaynak | config_emergency_call_number | Acil durum araması başlatıldığında otomatik olarak aranan telefon numarası. Tür: Dize Varsayılan: 112 |
| Kaynak | config_emergency_mcc_codes | Özelliğin etkin olması gereken MM'lerin listelendiği bir tam sayı dizisi. Tür: Tam Sayı Dizisi Varsayılan: {404,405} |
| Ayar | emergency_affordance_number | Acil durum özelliğinde aranacak numara ile genel ayarı geçersiz kılma. Bu durum yalnızca hata ayıklanabilir derleme resimlerini (yani derleme türü userdebug veya eng) etkiler. Bu yalnızca test amaçlıdır. Tür: Dize Varsayılan: ayarlanmamış |
| Ayar | force_emergency_affordance | Acil durum kolaylığı özelliğinin cihaz durumundan bağımsız olarak gösterilip gösterilmeyeceğini belirten genel ayar. Bu yalnızca test amaçlıdır. Tür: Boole (1 veya 0) Varsayılan: ayarlanmamış --> 0 |
112'ye acil durum aramalarını etkinleştirme
Acil durum araması özelliği, aramayı acil durum çeviricisini kullanarak bağlar. Böylece, kilit ekranı etkin olduğunda arama bağlanabilir. Acil durum çevirici, aramaları yalnızca sistem özelliği aracılığıyla Radyo Arayüzü Katmanı (RIL) tarafından sağlanan numaralar listesine bağlar:
- SIM kart takılı değilken
ril.ecclist. ril.ecclistSimSlotNumberSIM kart takıldığında veSimSlotNumber, varsayılan abonenin yuva kimliğidir.
Acil Durum Kolaylığı özelliğini kullanan cihaz üreticileri, Hindistan'daki cihazlarda RIL'de acil durum numarası olarak her zaman 112'nin etkinleştirildiğini doğrulamalıdır.
Doğrulama
Hata ayıklanabilir bir derlemede test yaparken aranan numara aşağıdaki komutla değiştirilebilir:
adb shell settings put global emergency_affordance_number NUMBER_TO_CALL
Bu ayar normal bir kullanıcı derlemesinde ayarlanabilse de yoksayılır. Aramanın gerçekten bağlanması için numaranın RIL tarafından sağlanan acil durum numaraları listesinde olması gerekir. Bu değer, kullanıcı hata ayıklama cihazında kök kabuktan yürütülen aşağıdaki komut kullanılarak geçici olarak ayarlanabilir:
setprop ril.ecclist "$(getprop ril.ecclist),NUMBER_TO_CALL"
Aşağıdaki komut, Hindistan mobil ağının algılanmadığı veya Hindistan SIM kartının takılmadığı durumlarda bile Acil Durum Kolaylığı özelliğinin etkinleştirilmesini zorlamak için de kullanılabilir.
adb shell settings put global force_emergency_affordance 1
En azından aşağıdaki durumları test etmeniz önerilir:
- Etkinleştirildiğinde, kilit ekranındaki ACİL DURUM düğmesine uzun basıldığında (Şekil 1) belirtilen acil durum numarası aranır.
- Etkinleştirildiğinde, Genel İşlem Menüsü'ndeki Acil Durum öğesi görünür ve bu öğeye dokunulduğunda belirtilen acil durum numarası aranır.
- Hindistan dışından bir SIM kart takılıyken Hindistan mobil ağı algılanmadığında özellik etkinleştirilmez.
- Bu özellik, algılanan mobil ağlardan bağımsız olarak, cihaza Hindistan SIM kartı takıldığında etkinleştirilir.
- Bu özellik, kurulu SIM kartlardan bağımsız olarak Hindistan mobil ağı varken cihazda etkinleştirilir.
Bir cihaz birden fazla SIM kartı destekliyorsa testte, SIM MCC algılamanın her SIM yuvasında doğru şekilde çalıştığı doğrulanmalıdır. Acil Durum Kolaylığı özelliği, Android Uyumluluk Test Paketi (CTS) tarafından yönetilmediğinden bu özellik için CTS testi yoktur.
Sık sorulan sorular
S. Hindistan'da 112 acil durum numarası henüz kullanılmamaktadır. Hâlâ kullanılmalı mı?
112, Hindistan'da Entegre Acil Durum İletişimi ve Müdahale Sistemleri (IECRS) tarafından tanımlanan Kamu Güvenliği Çağrı Merkezi (PSAP) olarak kullanılan numaradır. PSAP devreye alınana kadar 112'ye yapılan tüm aramalar mevcut 100 acil durum numarasına yönlendirilir (bu, Android'in değil operatörün sorumluluğundadır).
S. Peki ya güç düğmesine üç kez basma gibi diğer tetikleyiciler?
Cihaz üreticileri ek tetikleyiciler uygulayabilir. Ancak Hindistan DoT'si donanım güç düğmesine üç kez dokunmayı onaylasa da bu tetikleyici, bazı yaygın olarak kullanılan uygulamalar (ör. Kamera uygulaması) güç düğmesine tekrar tekrar dokunmayı içeren güç düğmesi hareketlerini kullandığından AOSP referans uygulamasında desteklenmez. Bu tür uygulamalar, acil durum çeviricisine müdahale edebilir veya kullanıcı, bu uygulamalarda işlemleri tetiklemeye çalışırken yanlışlıkla panik düğmesini tetikleyebilir.