summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2016-10-13 00:44:58 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2016-10-13 00:44:59 +0000
commitaa133acb9181e54d85718b3069a3e9c867f27816 (patch)
tree8589fb267fff3f6d79ad2c477ac6adbabba721b6
parent00701730a5643b806d32dbebc8b586bd0ecb4d8e (diff)
parenta70bb895f5bae6e9a1e00809761d75311aca6c80 (diff)
downloadbase-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.java10
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();