Loading src/java/com/android/internal/telephony/RIL.java +0 −32 Original line number Diff line number Diff line Loading @@ -70,7 +70,6 @@ import android.os.Build; import android.os.Handler; import android.os.HwBinder; import android.os.Message; import android.os.PersistableBundle; import android.os.PowerManager; import android.os.PowerManager.WakeLock; import android.os.RemoteException; Loading @@ -80,7 +79,6 @@ import android.provider.Settings; import android.service.carrier.CarrierIdentifier; import android.sysprop.TelephonyProperties; import android.telephony.AccessNetworkConstants.AccessNetworkType; import android.telephony.CarrierConfigManager; import android.telephony.CarrierRestrictionRules; import android.telephony.CellInfo; import android.telephony.CellSignalStrengthCdma; Loading Loading @@ -131,7 +129,6 @@ import com.android.internal.telephony.metrics.TelephonyMetrics; import com.android.internal.telephony.nano.TelephonyProto.SmsSession; import com.android.internal.telephony.uicc.IccCardApplicationStatus.PersoSubState; import com.android.internal.telephony.uicc.IccUtils; import com.android.internal.telephony.util.ArrayUtils; import com.android.internal.telephony.util.TelephonyUtils; import com.android.telephony.Rlog; Loading Loading @@ -1303,39 +1300,10 @@ public class RIL extends BaseCommands implements CommandsInterface { } } private String getEmergencyNumberAddressWithoutPrefix(String address) { SubscriptionManager subscriptionManager = mContext.getSystemService( SubscriptionManager.class); int subId = subscriptionManager.getActiveSubscriptionInfoForSimSlotIndex( mPhoneId).getSubscriptionId(); CarrierConfigManager configMgr = mContext.getSystemService(CarrierConfigManager.class); if (configMgr == null) { return null; } PersistableBundle b = configMgr.getConfigForSubId(subId); String[] prefixes = b == null ? null : b.getStringArray( CarrierConfigManager.KEY_EMERGENCY_NUMBER_PREFIX_STRING_ARRAY); if (ArrayUtils.isEmpty(prefixes)) { return address; } for (String prefix : prefixes) { // If emergencyNumber starts with this prefix, remove this prefix to retrieve the // actual emergency number. if (!TextUtils.isEmpty(prefix) && address.startsWith(prefix)) { return address.substring(prefix.length()); } } return address; } @Override public void dial(String address, boolean isEmergencyCall, EmergencyNumber emergencyNumberInfo, boolean hasKnownUserIntentEmergency, int clirMode, UUSInfo uusInfo, Message result) { // Remove prefix while dialing emergency number with modem if (isEmergencyCall) { address = getEmergencyNumberAddressWithoutPrefix(address); } if (isEmergencyCall && mRadioVersion.greaterOrEqual(RADIO_HAL_VERSION_1_4) && emergencyNumberInfo != null) { emergencyDial(address, emergencyNumberInfo, hasKnownUserIntentEmergency, clirMode, Loading tests/telephonytests/src/com/android/internal/telephony/RILTest.java +0 −62 Original line number Diff line number Diff line Loading @@ -106,7 +106,6 @@ import android.content.pm.ApplicationInfo; import android.hardware.radio.V1_0.Carrier; import android.hardware.radio.V1_0.CdmaSmsMessage; import android.hardware.radio.V1_0.DataProfileInfo; import android.hardware.radio.V1_0.Dial; import android.hardware.radio.V1_0.GsmSmsMessage; import android.hardware.radio.V1_0.ImsSmsMessage; import android.hardware.radio.V1_0.NvWriteItem; Loading @@ -115,7 +114,6 @@ import android.hardware.radio.V1_0.RadioResponseInfo; import android.hardware.radio.V1_0.RadioResponseType; import android.hardware.radio.V1_0.RadioTechnologyFamily; import android.hardware.radio.V1_0.SmsWriteArgs; import android.hardware.radio.V1_0.UusInfo; import android.hardware.radio.V1_6.IRadio; import android.hardware.radio.deprecated.V1_0.IOemHook; import android.net.ConnectivityManager; Loading @@ -126,12 +124,10 @@ import android.os.IPowerManager; import android.os.IThermalService; import android.os.Looper; import android.os.Message; import android.os.PersistableBundle; import android.os.PowerManager; import android.os.WorkSource; import android.service.carrier.CarrierIdentifier; import android.telephony.AccessNetworkConstants; import android.telephony.CarrierConfigManager; import android.telephony.CellIdentityCdma; import android.telephony.CellIdentityGsm; import android.telephony.CellIdentityLte; Loading @@ -157,7 +153,6 @@ import android.telephony.RadioAccessSpecifier; import android.telephony.ServiceState; import android.telephony.SignalStrength; import android.telephony.SmsManager; import android.telephony.SubscriptionInfo; import android.telephony.TelephonyManager; import android.telephony.data.ApnSetting; import android.telephony.data.DataCallResponse; Loading @@ -166,7 +161,6 @@ import android.telephony.data.EpsQos; import android.telephony.data.QosBearerFilter; import android.telephony.data.QosBearerSession; import android.telephony.data.TrafficDescriptor; import android.telephony.emergency.EmergencyNumber; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; Loading Loading @@ -202,10 +196,6 @@ public class RILTest extends TelephonyTest { // refer to RIL#DEFAULT_WAKE_LOCK_TIMEOUT_MS private static final int DEFAULT_WAKE_LOCK_TIMEOUT_MS = 60000; @Mock private CarrierConfigManager mMockCarrierConfigManager; @Mock private SubscriptionInfo mSubscriptionInfo; @Mock private ConnectivityManager mConnectionManager; @Mock Loading @@ -226,7 +216,6 @@ public class RILTest extends TelephonyTest { private RIL mRILInstance; private RIL mRILUnderTest; ArgumentCaptor<Integer> mSerialNumberCaptor = ArgumentCaptor.forClass(Integer.class); ArgumentCaptor<Dial> mDialArgumentCaptor = ArgumentCaptor.forClass(Dial.class); // Constants private static final String ALPHA_LONG = "long"; Loading Loading @@ -311,10 +300,6 @@ public class RILTest extends TelephonyTest { Context context = new ContextFixture().getTestDouble(); doReturn(true).when(mConnectionManager) .isNetworkSupported(ConnectivityManager.TYPE_MOBILE); doReturn(mSubscriptionManager).when(context) .getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE); doReturn(mMockCarrierConfigManager).when(context) .getSystemService(Context.CARRIER_CONFIG_SERVICE); doReturn(mConnectionManager).when(context) .getSystemService(Context.CONNECTIVITY_SERVICE); doReturn(mTelephonyManager).when(context) Loading Loading @@ -765,53 +750,6 @@ public class RILTest extends TelephonyTest { verifyRILResponse(mRILUnderTest, mSerialNumberCaptor.getValue(), RIL_REQUEST_DTMF); } private void setEmergencyNumberPrefixCarrierConfig(String[] prefixes) { doReturn(mSubscriptionInfo).when(mSubscriptionManager) .getActiveSubscriptionInfoForSimSlotIndex(anyInt()); doReturn(0).when(mSubscriptionInfo).getSubscriptionId(); final PersistableBundle bundle = new PersistableBundle(); bundle.putStringArray( CarrierConfigManager.KEY_EMERGENCY_NUMBER_PREFIX_STRING_ARRAY, prefixes); doReturn(bundle).when(mMockCarrierConfigManager).getConfigForSubId(anyInt()); } @FlakyTest @Test public void testDialEmergencyNumberWithoutPrefix() throws Exception { String[] prefixes = {"999"}; setEmergencyNumberPrefixCarrierConfig(prefixes); String addressWithPrefix = "99912345"; boolean isEmergencyCall = true; EmergencyNumber emergencyNumber = new EmergencyNumber( "99912345", "us", "30", EmergencyNumber.EMERGENCY_SERVICE_CATEGORY_UNSPECIFIED, new ArrayList<String>(), EmergencyNumber.EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING, EmergencyNumber.EMERGENCY_CALL_ROUTING_NORMAL); boolean hasKnownUserIntentEmergency = true; int clirMode = 0; UUSInfo uusInfo = null; Message result = obtainMessage(); Dial dialInfo = new Dial(); dialInfo.address = "12345"; dialInfo.clir = clirMode; if (uusInfo != null) { UusInfo info = new UusInfo(); dialInfo.uusInfo.add(info); } mRILUnderTest.dial(addressWithPrefix, isEmergencyCall, emergencyNumber, hasKnownUserIntentEmergency, clirMode, uusInfo, result); verify(mRadioProxy).dial(mSerialNumberCaptor.capture(), mDialArgumentCaptor.capture()); assertEquals(mDialArgumentCaptor.getValue().address, "12345"); } @FlakyTest @Test public void testSendSMS() throws Exception { Loading Loading
src/java/com/android/internal/telephony/RIL.java +0 −32 Original line number Diff line number Diff line Loading @@ -70,7 +70,6 @@ import android.os.Build; import android.os.Handler; import android.os.HwBinder; import android.os.Message; import android.os.PersistableBundle; import android.os.PowerManager; import android.os.PowerManager.WakeLock; import android.os.RemoteException; Loading @@ -80,7 +79,6 @@ import android.provider.Settings; import android.service.carrier.CarrierIdentifier; import android.sysprop.TelephonyProperties; import android.telephony.AccessNetworkConstants.AccessNetworkType; import android.telephony.CarrierConfigManager; import android.telephony.CarrierRestrictionRules; import android.telephony.CellInfo; import android.telephony.CellSignalStrengthCdma; Loading Loading @@ -131,7 +129,6 @@ import com.android.internal.telephony.metrics.TelephonyMetrics; import com.android.internal.telephony.nano.TelephonyProto.SmsSession; import com.android.internal.telephony.uicc.IccCardApplicationStatus.PersoSubState; import com.android.internal.telephony.uicc.IccUtils; import com.android.internal.telephony.util.ArrayUtils; import com.android.internal.telephony.util.TelephonyUtils; import com.android.telephony.Rlog; Loading Loading @@ -1303,39 +1300,10 @@ public class RIL extends BaseCommands implements CommandsInterface { } } private String getEmergencyNumberAddressWithoutPrefix(String address) { SubscriptionManager subscriptionManager = mContext.getSystemService( SubscriptionManager.class); int subId = subscriptionManager.getActiveSubscriptionInfoForSimSlotIndex( mPhoneId).getSubscriptionId(); CarrierConfigManager configMgr = mContext.getSystemService(CarrierConfigManager.class); if (configMgr == null) { return null; } PersistableBundle b = configMgr.getConfigForSubId(subId); String[] prefixes = b == null ? null : b.getStringArray( CarrierConfigManager.KEY_EMERGENCY_NUMBER_PREFIX_STRING_ARRAY); if (ArrayUtils.isEmpty(prefixes)) { return address; } for (String prefix : prefixes) { // If emergencyNumber starts with this prefix, remove this prefix to retrieve the // actual emergency number. if (!TextUtils.isEmpty(prefix) && address.startsWith(prefix)) { return address.substring(prefix.length()); } } return address; } @Override public void dial(String address, boolean isEmergencyCall, EmergencyNumber emergencyNumberInfo, boolean hasKnownUserIntentEmergency, int clirMode, UUSInfo uusInfo, Message result) { // Remove prefix while dialing emergency number with modem if (isEmergencyCall) { address = getEmergencyNumberAddressWithoutPrefix(address); } if (isEmergencyCall && mRadioVersion.greaterOrEqual(RADIO_HAL_VERSION_1_4) && emergencyNumberInfo != null) { emergencyDial(address, emergencyNumberInfo, hasKnownUserIntentEmergency, clirMode, Loading
tests/telephonytests/src/com/android/internal/telephony/RILTest.java +0 −62 Original line number Diff line number Diff line Loading @@ -106,7 +106,6 @@ import android.content.pm.ApplicationInfo; import android.hardware.radio.V1_0.Carrier; import android.hardware.radio.V1_0.CdmaSmsMessage; import android.hardware.radio.V1_0.DataProfileInfo; import android.hardware.radio.V1_0.Dial; import android.hardware.radio.V1_0.GsmSmsMessage; import android.hardware.radio.V1_0.ImsSmsMessage; import android.hardware.radio.V1_0.NvWriteItem; Loading @@ -115,7 +114,6 @@ import android.hardware.radio.V1_0.RadioResponseInfo; import android.hardware.radio.V1_0.RadioResponseType; import android.hardware.radio.V1_0.RadioTechnologyFamily; import android.hardware.radio.V1_0.SmsWriteArgs; import android.hardware.radio.V1_0.UusInfo; import android.hardware.radio.V1_6.IRadio; import android.hardware.radio.deprecated.V1_0.IOemHook; import android.net.ConnectivityManager; Loading @@ -126,12 +124,10 @@ import android.os.IPowerManager; import android.os.IThermalService; import android.os.Looper; import android.os.Message; import android.os.PersistableBundle; import android.os.PowerManager; import android.os.WorkSource; import android.service.carrier.CarrierIdentifier; import android.telephony.AccessNetworkConstants; import android.telephony.CarrierConfigManager; import android.telephony.CellIdentityCdma; import android.telephony.CellIdentityGsm; import android.telephony.CellIdentityLte; Loading @@ -157,7 +153,6 @@ import android.telephony.RadioAccessSpecifier; import android.telephony.ServiceState; import android.telephony.SignalStrength; import android.telephony.SmsManager; import android.telephony.SubscriptionInfo; import android.telephony.TelephonyManager; import android.telephony.data.ApnSetting; import android.telephony.data.DataCallResponse; Loading @@ -166,7 +161,6 @@ import android.telephony.data.EpsQos; import android.telephony.data.QosBearerFilter; import android.telephony.data.QosBearerSession; import android.telephony.data.TrafficDescriptor; import android.telephony.emergency.EmergencyNumber; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; Loading Loading @@ -202,10 +196,6 @@ public class RILTest extends TelephonyTest { // refer to RIL#DEFAULT_WAKE_LOCK_TIMEOUT_MS private static final int DEFAULT_WAKE_LOCK_TIMEOUT_MS = 60000; @Mock private CarrierConfigManager mMockCarrierConfigManager; @Mock private SubscriptionInfo mSubscriptionInfo; @Mock private ConnectivityManager mConnectionManager; @Mock Loading @@ -226,7 +216,6 @@ public class RILTest extends TelephonyTest { private RIL mRILInstance; private RIL mRILUnderTest; ArgumentCaptor<Integer> mSerialNumberCaptor = ArgumentCaptor.forClass(Integer.class); ArgumentCaptor<Dial> mDialArgumentCaptor = ArgumentCaptor.forClass(Dial.class); // Constants private static final String ALPHA_LONG = "long"; Loading Loading @@ -311,10 +300,6 @@ public class RILTest extends TelephonyTest { Context context = new ContextFixture().getTestDouble(); doReturn(true).when(mConnectionManager) .isNetworkSupported(ConnectivityManager.TYPE_MOBILE); doReturn(mSubscriptionManager).when(context) .getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE); doReturn(mMockCarrierConfigManager).when(context) .getSystemService(Context.CARRIER_CONFIG_SERVICE); doReturn(mConnectionManager).when(context) .getSystemService(Context.CONNECTIVITY_SERVICE); doReturn(mTelephonyManager).when(context) Loading Loading @@ -765,53 +750,6 @@ public class RILTest extends TelephonyTest { verifyRILResponse(mRILUnderTest, mSerialNumberCaptor.getValue(), RIL_REQUEST_DTMF); } private void setEmergencyNumberPrefixCarrierConfig(String[] prefixes) { doReturn(mSubscriptionInfo).when(mSubscriptionManager) .getActiveSubscriptionInfoForSimSlotIndex(anyInt()); doReturn(0).when(mSubscriptionInfo).getSubscriptionId(); final PersistableBundle bundle = new PersistableBundle(); bundle.putStringArray( CarrierConfigManager.KEY_EMERGENCY_NUMBER_PREFIX_STRING_ARRAY, prefixes); doReturn(bundle).when(mMockCarrierConfigManager).getConfigForSubId(anyInt()); } @FlakyTest @Test public void testDialEmergencyNumberWithoutPrefix() throws Exception { String[] prefixes = {"999"}; setEmergencyNumberPrefixCarrierConfig(prefixes); String addressWithPrefix = "99912345"; boolean isEmergencyCall = true; EmergencyNumber emergencyNumber = new EmergencyNumber( "99912345", "us", "30", EmergencyNumber.EMERGENCY_SERVICE_CATEGORY_UNSPECIFIED, new ArrayList<String>(), EmergencyNumber.EMERGENCY_NUMBER_SOURCE_NETWORK_SIGNALING, EmergencyNumber.EMERGENCY_CALL_ROUTING_NORMAL); boolean hasKnownUserIntentEmergency = true; int clirMode = 0; UUSInfo uusInfo = null; Message result = obtainMessage(); Dial dialInfo = new Dial(); dialInfo.address = "12345"; dialInfo.clir = clirMode; if (uusInfo != null) { UusInfo info = new UusInfo(); dialInfo.uusInfo.add(info); } mRILUnderTest.dial(addressWithPrefix, isEmergencyCall, emergencyNumber, hasKnownUserIntentEmergency, clirMode, uusInfo, result); verify(mRadioProxy).dial(mSerialNumberCaptor.capture(), mDialArgumentCaptor.capture()); assertEquals(mDialArgumentCaptor.getValue().address, "12345"); } @FlakyTest @Test public void testSendSMS() throws Exception { Loading