diff --git a/src/com/android/settings/sim/smartForwarding/EnableSmartForwardingTask.java b/src/com/android/settings/sim/smartForwarding/EnableSmartForwardingTask.java index 6fe62e0fc9c..6742e5eb02f 100644 --- a/src/com/android/settings/sim/smartForwarding/EnableSmartForwardingTask.java +++ b/src/com/android/settings/sim/smartForwarding/EnableSmartForwardingTask.java @@ -37,8 +37,6 @@ import java.util.concurrent.Executor; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; -import java.util.function.Consumer; -import java.util.stream.Collectors; public class EnableSmartForwardingTask implements Callable { @@ -94,14 +92,9 @@ public class EnableSmartForwardingTask mSlotUTData = new SlotUTData[tm.getActiveModemCount()]; for (int i = 0; i < mSlotUTData.length; i++) { - int[] subIdList = sm.getSubscriptionIds(i); - if (subIdList.length < 1) { - Log.e(TAG, "getSubscriptionIds() return empty sub id list."); - return false; - } - int subId = subIdList[0]; + int subId = SubscriptionManager.getSubscriptionId(i); - if (!sm.isActiveSubId(subId)) { + if (!SubscriptionManager.isValidSubscriptionId(subId)) { mResult.setReason(FeatureResult.FailedReason.SIM_NOT_ACTIVE); return false; } diff --git a/src/com/android/settings/sim/smartForwarding/SmartForwardingActivity.java b/src/com/android/settings/sim/smartForwarding/SmartForwardingActivity.java index 070e65a1d56..95ac99923dd 100644 --- a/src/com/android/settings/sim/smartForwarding/SmartForwardingActivity.java +++ b/src/com/android/settings/sim/smartForwarding/SmartForwardingActivity.java @@ -137,7 +137,7 @@ public class SmartForwardingActivity extends SettingsBaseActivity { TelephonyManager tm = getSystemService(TelephonyManager.class); SubscriptionManager sm = getSystemService(SubscriptionManager.class); - boolean[] callWaitingStatus = getAllSlotCallWaitingStatus(this, sm, tm); + boolean[] callWaitingStatus = getAllSlotCallWaitingStatus(this, tm); CallForwardingInfo[] callForwardingInfo = getAllSlotCallForwardingStatus(this, sm, tm); // Disable feature diff --git a/src/com/android/settings/sim/smartForwarding/SmartForwardingUtils.java b/src/com/android/settings/sim/smartForwarding/SmartForwardingUtils.java index 5a82d8ba9ce..3674b2fbee7 100644 --- a/src/com/android/settings/sim/smartForwarding/SmartForwardingUtils.java +++ b/src/com/android/settings/sim/smartForwarding/SmartForwardingUtils.java @@ -80,13 +80,12 @@ public class SmartForwardingUtils { preferences.clear().commit(); } - public static boolean[] getAllSlotCallWaitingStatus(Context context, SubscriptionManager sm, - TelephonyManager tm) { + public static boolean[] getAllSlotCallWaitingStatus(Context context, TelephonyManager tm) { int phoneCount = tm.getActiveModemCount(); boolean[] allStatus = new boolean[phoneCount]; for (int i = 0; i < phoneCount; i++) { - int subId = sm.getSubscriptionIds(i)[0]; + int subId = SubscriptionManager.getSubscriptionId(i); boolean callWaitingStatus = getBackupCallWaitingStatus(context, subId); allStatus[i] = callWaitingStatus; } @@ -99,7 +98,7 @@ public class SmartForwardingUtils { CallForwardingInfo[] allStatus = new CallForwardingInfo[phoneCount]; for (int i = 0; i < phoneCount; i++) { - int subId = sm.getSubscriptionIds(i)[0]; + int subId = SubscriptionManager.getSubscriptionId(i); CallForwardingInfo callWaitingStatus = getBackupCallForwardingStatus(context, subId); allStatus[i] = callWaitingStatus; } @@ -110,7 +109,7 @@ public class SmartForwardingUtils { TelephonyManager tm) { int phoneCount = tm.getActiveModemCount(); for (int i = 0; i < phoneCount; i++) { - int subId = sm.getSubscriptionIds(i)[0]; + int subId = SubscriptionManager.getSubscriptionId(i); clearBackupData(context, subId); } } @@ -134,12 +133,8 @@ public class SmartForwardingUtils { public static String getPhoneNumber(Context context, int slotId) { SubscriptionManager subscriptionManager = context.getSystemService( SubscriptionManager.class); - int[] subIdList = subscriptionManager.getSubscriptionIds(slotId); - if (subIdList != null) { - SubscriptionInfo subInfo = subscriptionManager.getActiveSubscriptionInfo(subIdList[0]); - return (subInfo != null) ? subInfo.getNumber() : ""; - } else { - return ""; - } + SubscriptionInfo subInfo = subscriptionManager.getActiveSubscriptionInfo( + SubscriptionManager.getSubscriptionId(slotId)); + return (subInfo != null) ? subInfo.getNumber() : ""; } } \ No newline at end of file