diff options
| author | 2016-10-13 00:41:24 +0000 | |
|---|---|---|
| committer | 2016-10-13 00:41:24 +0000 | |
| commit | c46b2ef8d2007d2e12ca5361e39f5621acb48fc5 (patch) | |
| tree | 69eb52392633d6cc0045aa5fbb383af6ae7656a5 | |
| parent | b920d48e0aa77a26e1b6b83c2cf0f59a94c2a755 (diff) | |
| parent | bd740cd56ac93e0e9fe6881cee927f7dbdd06620 (diff) | |
Fixed an issue where the emergency affordance would show
am: bd740cd56a
Change-Id: I6ce705cc701bf149dec45feabcf4777cc89afa6a
| -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(); |