diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2016-10-13 00:44:58 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2016-10-13 00:44:59 +0000 |
commit | aa133acb9181e54d85718b3069a3e9c867f27816 (patch) | |
tree | 8589fb267fff3f6d79ad2c477ac6adbabba721b6 | |
parent | 00701730a5643b806d32dbebc8b586bd0ecb4d8e (diff) | |
parent | a70bb895f5bae6e9a1e00809761d75311aca6c80 (diff) | |
download | base-aa133acb9181e54d85718b3069a3e9c867f27816.tar.gz |
Merge "DO NOT MERGE - Fixed an issue where the emergency affordance would show" into nougat-dev
-rw-r--r-- | services/core/java/com/android/server/emergency/EmergencyAffordanceService.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/emergency/EmergencyAffordanceService.java b/services/core/java/com/android/server/emergency/EmergencyAffordanceService.java index cca9f10c630b..353f4506e1e9 100644 --- a/services/core/java/com/android/server/emergency/EmergencyAffordanceService.java +++ b/services/core/java/com/android/server/emergency/EmergencyAffordanceService.java @@ -99,6 +99,7 @@ public class EmergencyAffordanceService extends SystemService { }; private boolean mSimNeedsEmergencyAffordance; private boolean mNetworkNeedsEmergencyAffordance; + private boolean mVoiceCapable; private void requestCellScan() { mHandler.obtainMessage(CELL_INFO_STATE_CHANGED).sendToTarget(); @@ -125,8 +126,8 @@ public class EmergencyAffordanceService extends SystemService { private void updateEmergencyAffordanceNeeded() { synchronized (mLock) { - mEmergencyAffordanceNeeded = mSimNeedsEmergencyAffordance || - mNetworkNeedsEmergencyAffordance; + mEmergencyAffordanceNeeded = mVoiceCapable && (mSimNeedsEmergencyAffordance || + mNetworkNeedsEmergencyAffordance); Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.EMERGENCY_AFFORDANCE_NEEDED, mEmergencyAffordanceNeeded ? 1 : 0); @@ -157,6 +158,11 @@ public class EmergencyAffordanceService extends SystemService { public void onBootPhase(int phase) { if (phase == PHASE_THIRD_PARTY_APPS_CAN_START) { mTelephonyManager = mContext.getSystemService(TelephonyManager.class); + mVoiceCapable = mTelephonyManager.isVoiceCapable(); + if (!mVoiceCapable) { + updateEmergencyAffordanceNeeded(); + return; + } mSubscriptionManager = SubscriptionManager.from(mContext); HandlerThread thread = new HandlerThread(TAG); thread.start(); |