[Mainline] To use getActiveSubscriptionInfo() instead of get default subscription Info with data/sms/voice

   - getDefaultDataSubscriptionInfo()
   	- getActiveSubscriptionInfo(getDefaultDataSubscriptionId());
   - getDefaultSmsSubscriptionInfo()
   	- getActiveSubscriptionInfo(getDefaultSmsSubscriptionId());
   - getDefaultVoiceSubscriptionInfo()
   	- getActiveSubscriptionInfo(getDefaultVoiceSubscriptionId());

Bug: 147206736
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageUtilsTest
      make RunSettingsRoboTests ROBOTEST_FILTER=MobileDataSliceTest
      make RunSettingsRoboTests ROBOTEST_FILTER=MobileDataPreferenceControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=DefaultSubscriptionControllerTest

Change-Id: I7b5988b3c3068c12e242e123ebb54477093d37ad
diff --git a/src/com/android/settings/datausage/DataUsageUtils.java b/src/com/android/settings/datausage/DataUsageUtils.java
index ef3e7b6..0308cf7 100644
--- a/src/com/android/settings/datausage/DataUsageUtils.java
+++ b/src/com/android/settings/datausage/DataUsageUtils.java
@@ -159,11 +159,12 @@
      * SubscriptionManager#INVALID_SUBSCRIPTION_ID
      */
     public static int getDefaultSubscriptionId(Context context) {
-        SubscriptionManager subManager = SubscriptionManager.from(context);
+        SubscriptionManager subManager = context.getSystemService(SubscriptionManager.class);
         if (subManager == null) {
             return SubscriptionManager.INVALID_SUBSCRIPTION_ID;
         }
-        SubscriptionInfo subscriptionInfo = subManager.getDefaultDataSubscriptionInfo();
+        SubscriptionInfo subscriptionInfo =
+                subManager.getActiveSubscriptionInfo(subManager.getDefaultDataSubscriptionId());
         if (subscriptionInfo == null) {
             List<SubscriptionInfo> list = subManager.getAllSubscriptionInfoList();
             if (list.size() == 0) {
diff --git a/src/com/android/settings/network/telephony/CallsDefaultSubscriptionController.java b/src/com/android/settings/network/telephony/CallsDefaultSubscriptionController.java
index 2348f70..99009c9 100644
--- a/src/com/android/settings/network/telephony/CallsDefaultSubscriptionController.java
+++ b/src/com/android/settings/network/telephony/CallsDefaultSubscriptionController.java
@@ -28,7 +28,7 @@
 
     @Override
     protected SubscriptionInfo getDefaultSubscriptionInfo() {
-        return mManager.getDefaultVoiceSubscriptionInfo();
+        return mManager.getActiveSubscriptionInfo(getDefaultSubscriptionId());
     }
 
     @Override
diff --git a/src/com/android/settings/network/telephony/MobileDataDialogFragment.java b/src/com/android/settings/network/telephony/MobileDataDialogFragment.java
index a6183e9..c8a1e98 100644
--- a/src/com/android/settings/network/telephony/MobileDataDialogFragment.java
+++ b/src/com/android/settings/network/telephony/MobileDataDialogFragment.java
@@ -86,7 +86,8 @@
                 final SubscriptionInfo currentSubInfo =
                         mSubscriptionManager.getActiveSubscriptionInfo(mSubId);
                 final SubscriptionInfo nextSubInfo =
-                        mSubscriptionManager.getDefaultDataSubscriptionInfo();
+                        mSubscriptionManager.getActiveSubscriptionInfo(
+                                mSubscriptionManager.getDefaultDataSubscriptionId());
 
                 final String previousName = (nextSubInfo == null)
                         ? getContext().getResources().getString(
diff --git a/src/com/android/settings/network/telephony/MobileDataSlice.java b/src/com/android/settings/network/telephony/MobileDataSlice.java
index c70ae1a..40c747c 100644
--- a/src/com/android/settings/network/telephony/MobileDataSlice.java
+++ b/src/com/android/settings/network/telephony/MobileDataSlice.java
@@ -147,8 +147,8 @@
     }
 
     protected static int getDefaultSubscriptionId(SubscriptionManager subscriptionManager) {
-        final SubscriptionInfo defaultSubscription =
-                subscriptionManager.getDefaultDataSubscriptionInfo();
+        final SubscriptionInfo defaultSubscription = subscriptionManager.getActiveSubscriptionInfo(
+                subscriptionManager.getDefaultDataSubscriptionId());
         if (defaultSubscription == null) {
             return SubscriptionManager.INVALID_SUBSCRIPTION_ID; // No default subscription
         }
@@ -157,8 +157,8 @@
     }
 
     private CharSequence getSummary() {
-        final SubscriptionInfo defaultSubscription =
-                mSubscriptionManager.getDefaultDataSubscriptionInfo();
+        final SubscriptionInfo defaultSubscription = mSubscriptionManager.getActiveSubscriptionInfo(
+                mSubscriptionManager.getDefaultDataSubscriptionId());
         if (defaultSubscription == null) {
             return null; // no summary text
         }
diff --git a/src/com/android/settings/network/telephony/SmsDefaultSubscriptionController.java b/src/com/android/settings/network/telephony/SmsDefaultSubscriptionController.java
index b999219..96ed771 100644
--- a/src/com/android/settings/network/telephony/SmsDefaultSubscriptionController.java
+++ b/src/com/android/settings/network/telephony/SmsDefaultSubscriptionController.java
@@ -28,7 +28,7 @@
 
     @Override
     protected SubscriptionInfo getDefaultSubscriptionInfo() {
-        return mManager.getDefaultSmsSubscriptionInfo();
+        return mManager.getActiveSubscriptionInfo(getDefaultSubscriptionId());
     }
 
     @Override
diff --git a/tests/robotests/src/com/android/settings/network/telephony/MobileDataPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/network/telephony/MobileDataPreferenceControllerTest.java
index 8c22d69..29f0f25 100644
--- a/tests/robotests/src/com/android/settings/network/telephony/MobileDataPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/network/telephony/MobileDataPreferenceControllerTest.java
@@ -98,7 +98,6 @@
     public void isDialogNeeded_disableSingleSim_returnFalse() {
         doReturn(true).when(mTelephonyManager).isDataEnabled();
         doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(SUB_ID);
-        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getDefaultDataSubscriptionInfo();
         doReturn(1).when(mTelephonyManager).getActiveModemCount();
 
         assertThat(mController.isDialogNeeded()).isFalse();
@@ -130,7 +129,6 @@
     public void onPreferenceChange_singleSim_On_shouldEnableData() {
         doReturn(true).when(mTelephonyManager).isDataEnabled();
         doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(SUB_ID);
-        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getDefaultDataSubscriptionInfo();
         doReturn(1).when(mTelephonyManager).getActiveModemCount();
 
         mController.onPreferenceChange(mPreference, true);
@@ -142,7 +140,6 @@
     public void onPreferenceChange_multiSim_On_shouldEnableData() {
         doReturn(true).when(mTelephonyManager).isDataEnabled();
         doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(SUB_ID);
-        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getDefaultDataSubscriptionInfo();
         doReturn(2).when(mTelephonyManager).getActiveModemCount();
 
         mController.onPreferenceChange(mPreference, true);
diff --git a/tests/robotests/src/com/android/settings/network/telephony/MobileDataSliceTest.java b/tests/robotests/src/com/android/settings/network/telephony/MobileDataSliceTest.java
index c66f75f..4cc8f36 100644
--- a/tests/robotests/src/com/android/settings/network/telephony/MobileDataSliceTest.java
+++ b/tests/robotests/src/com/android/settings/network/telephony/MobileDataSliceTest.java
@@ -19,6 +19,7 @@
 
 import static com.google.common.truth.Truth.assertThat;
 
+import static org.mockito.ArgumentMatchers.anyInt;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.times;
@@ -76,7 +77,7 @@
         doReturn(mTelephonyManager).when(mContext).getSystemService(Context.TELEPHONY_SERVICE);
         doReturn(mSubscriptionManager).when(mContext).getSystemService(SubscriptionManager.class);
         doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID);
-        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getDefaultDataSubscriptionInfo();
+        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(anyInt());
         doReturn(SUB_ID).when(mSubscriptionInfo).getSubscriptionId();
         doReturn(new ArrayList<>(Arrays.asList(mSubscriptionInfo)))
                 .when(mSubscriptionManager).getSelectableSubscriptionInfoList();