Loading src/java/com/android/internal/telephony/GsmCdmaPhone.java +22 −6 Original line number Diff line number Diff line Loading @@ -185,6 +185,8 @@ public class GsmCdmaPhone extends Phone { private int mRilVersion; private boolean mBroadcastEmergencyCallStateChanges = false; // flag to indicate if emergency call end broadcast should be sent boolean mSendEmergencyCallEnd = true; // Constructors Loading Loading @@ -637,11 +639,24 @@ public class GsmCdmaPhone extends Phone { @Override public void sendEmergencyCallStateChange(boolean callActive) { if (mBroadcastEmergencyCallStateChanges) { if (callActive && getServiceState().getRilDataRadioTechnology() == ServiceState.RIL_RADIO_TECHNOLOGY_IWLAN) { // if emergency call is started while on iwlan, do not send the start or end // broadcast mSendEmergencyCallEnd = false; if (DBG) Rlog.d(LOG_TAG, "sendEmergencyCallStateChange: not sending call start " + "intent as voice tech is IWLAN"); } else if (callActive || mSendEmergencyCallEnd) { Intent intent = new Intent(TelephonyIntents.ACTION_EMERGENCY_CALL_STATE_CHANGED); intent.putExtra(PhoneConstants.PHONE_IN_EMERGENCY_CALL, callActive); SubscriptionManager.putPhoneIdAndSubIdExtra(intent, getPhoneId()); ActivityManagerNative.broadcastStickyIntent(intent, null, UserHandle.USER_ALL); if (DBG) Rlog.d(LOG_TAG, "sendEmergencyCallStateChange"); } else { if (DBG) Rlog.d(LOG_TAG, "sendEmergencyCallStateChange: not sending call end " + "intent as start was not sent"); mSendEmergencyCallEnd = true; } } } Loading Loading @@ -2069,7 +2084,8 @@ public class GsmCdmaPhone extends Phone { if (b != null) { boolean broadcastEmergencyCallStateChanges = b.getBoolean( CarrierConfigManager.KEY_BROADCAST_EMERGENCY_CALL_STATE_CHANGES_BOOL); logd("broadcastEmergencyCallStateChanges =" + broadcastEmergencyCallStateChanges); logd("broadcastEmergencyCallStateChanges = " + broadcastEmergencyCallStateChanges); setBroadcastEmergencyCallStateChanges(broadcastEmergencyCallStateChanges); } else { loge("didn't get broadcastEmergencyCallStateChanges from carrier config"); Loading Loading
src/java/com/android/internal/telephony/GsmCdmaPhone.java +22 −6 Original line number Diff line number Diff line Loading @@ -185,6 +185,8 @@ public class GsmCdmaPhone extends Phone { private int mRilVersion; private boolean mBroadcastEmergencyCallStateChanges = false; // flag to indicate if emergency call end broadcast should be sent boolean mSendEmergencyCallEnd = true; // Constructors Loading Loading @@ -637,11 +639,24 @@ public class GsmCdmaPhone extends Phone { @Override public void sendEmergencyCallStateChange(boolean callActive) { if (mBroadcastEmergencyCallStateChanges) { if (callActive && getServiceState().getRilDataRadioTechnology() == ServiceState.RIL_RADIO_TECHNOLOGY_IWLAN) { // if emergency call is started while on iwlan, do not send the start or end // broadcast mSendEmergencyCallEnd = false; if (DBG) Rlog.d(LOG_TAG, "sendEmergencyCallStateChange: not sending call start " + "intent as voice tech is IWLAN"); } else if (callActive || mSendEmergencyCallEnd) { Intent intent = new Intent(TelephonyIntents.ACTION_EMERGENCY_CALL_STATE_CHANGED); intent.putExtra(PhoneConstants.PHONE_IN_EMERGENCY_CALL, callActive); SubscriptionManager.putPhoneIdAndSubIdExtra(intent, getPhoneId()); ActivityManagerNative.broadcastStickyIntent(intent, null, UserHandle.USER_ALL); if (DBG) Rlog.d(LOG_TAG, "sendEmergencyCallStateChange"); } else { if (DBG) Rlog.d(LOG_TAG, "sendEmergencyCallStateChange: not sending call end " + "intent as start was not sent"); mSendEmergencyCallEnd = true; } } } Loading Loading @@ -2069,7 +2084,8 @@ public class GsmCdmaPhone extends Phone { if (b != null) { boolean broadcastEmergencyCallStateChanges = b.getBoolean( CarrierConfigManager.KEY_BROADCAST_EMERGENCY_CALL_STATE_CHANGES_BOOL); logd("broadcastEmergencyCallStateChanges =" + broadcastEmergencyCallStateChanges); logd("broadcastEmergencyCallStateChanges = " + broadcastEmergencyCallStateChanges); setBroadcastEmergencyCallStateChanges(broadcastEmergencyCallStateChanges); } else { loge("didn't get broadcastEmergencyCallStateChanges from carrier config"); Loading