diff --git a/src/com/android/settings/network/MobileNetworkRepository.java b/src/com/android/settings/network/MobileNetworkRepository.java index 5de4c726f45..42f15c824b1 100644 --- a/src/com/android/settings/network/MobileNetworkRepository.java +++ b/src/com/android/settings/network/MobileNetworkRepository.java @@ -264,8 +264,7 @@ public class MobileNetworkRepository extends SubscriptionManager.OnSubscriptions mIsActive = portInfo.isActive(); mPortIndex = portInfo.getPortIndex(); } else if (DEBUG) { - Log.d(TAG, - "Can not get port index and physicalSlotIndex for subId " + Log.d(TAG, "Can not get port index and physicalSlotIndex for subId " + mSubId); } }); @@ -297,8 +296,7 @@ public class MobileNetworkRepository extends SubscriptionManager.OnSubscriptions setActiveSubInfoList(mActiveSubInfoEntityList); } - private void setActiveSubInfoList( - List activeSubInfoEntityList) { + private void setActiveSubInfoList(List activeSubInfoEntityList) { if (DEBUG) { Log.d(TAG, "onActiveSubInfoChanged, activeSubInfoEntityList = " + activeSubInfoEntityList); @@ -460,11 +458,16 @@ public class MobileNetworkRepository extends SubscriptionManager.OnSubscriptions if (DEBUG) { Log.d(TAG, "availableSudInfoList from framework is empty, remove all subs"); } - for (SubscriptionInfoEntity info : mAvailableSubInfoEntityList) { + + SubscriptionInfoEntity[] availableInfoArray = mAvailableSubInfoEntityList.toArray( + new SubscriptionInfoEntity[0]); + for (SubscriptionInfoEntity info : availableInfoArray) { deleteAllInfoBySubId(info.subId); } + } else if (availableInfoList != null) { - for (SubscriptionInfo subInfo : availableInfoList) { + SubscriptionInfo[] infoArray = availableInfoList.toArray(new SubscriptionInfo[0]); + for (SubscriptionInfo subInfo : infoArray) { mSubscriptionInfoMap.remove(subInfo.getSubscriptionId()); if (DEBUG) { Log.d(TAG, diff --git a/src/com/android/settings/network/telephony/MobileNetworkSettings.java b/src/com/android/settings/network/telephony/MobileNetworkSettings.java index 88c365654e5..60f35cd1290 100644 --- a/src/com/android/settings/network/telephony/MobileNetworkSettings.java +++ b/src/com/android/settings/network/telephony/MobileNetworkSettings.java @@ -464,10 +464,6 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings impleme @Override public void onAvailableSubInfoChanged(List subInfoEntityList) { - } - - @Override - public void onActiveSubInfoChanged(List subInfoEntityList) { if (DataServiceUtils.shouldUpdateEntityList(mSubInfoEntityList, subInfoEntityList)) { // Check the current subId is existed or not, if so, finish it. @@ -499,6 +495,10 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings impleme } } + @Override + public void onActiveSubInfoChanged(List subInfoEntityList) { + } + @Override public void onAllUiccInfoChanged(List uiccInfoEntityList) { }