Loading src/java/com/android/internal/telephony/SubscriptionController.java +2 −1 Original line number Original line Diff line number Diff line Loading @@ -307,7 +307,8 @@ public class SubscriptionController extends ISub.Stub { broadcastSimInfoContentChanged(); broadcastSimInfoContentChanged(); TelephonyMetrics metrics = TelephonyMetrics.getInstance(); TelephonyMetrics metrics = TelephonyMetrics.getInstance(); metrics.updateActiveSubscriptionInfoList(mCacheActiveSubInfoList); metrics.updateActiveSubscriptionInfoList( Collections.unmodifiableList(mCacheActiveSubInfoList)); } } /** /** Loading src/java/com/android/internal/telephony/metrics/TelephonyMetrics.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -714,14 +714,14 @@ public class TelephonyMetrics { } } /** Update active subscription info list. */ /** Update active subscription info list. */ public void updateActiveSubscriptionInfoList(List<SubscriptionInfo> subInfos) { public synchronized void updateActiveSubscriptionInfoList(List<SubscriptionInfo> subInfos) { List<Integer> inActivePhoneList = new ArrayList<>(); List<Integer> inActivePhoneList = new ArrayList<>(); for (int i = 0; i < mLastActiveSubscriptionInfos.size(); i++) { for (int i = 0; i < mLastActiveSubscriptionInfos.size(); i++) { inActivePhoneList.add(mLastActiveSubscriptionInfos.keyAt(i)); inActivePhoneList.add(mLastActiveSubscriptionInfos.keyAt(i)); } } for (SubscriptionInfo info : subInfos) { for (SubscriptionInfo info : subInfos) { int phoneId = SubscriptionManager.getPhoneId(info.getSubscriptionId()); int phoneId = info.getSimSlotIndex(); inActivePhoneList.removeIf(value -> value.equals(phoneId)); inActivePhoneList.removeIf(value -> value.equals(phoneId)); ActiveSubscriptionInfo activeSubscriptionInfo = new ActiveSubscriptionInfo(); ActiveSubscriptionInfo activeSubscriptionInfo = new ActiveSubscriptionInfo(); activeSubscriptionInfo.slotIndex = phoneId; activeSubscriptionInfo.slotIndex = phoneId; Loading Loading
src/java/com/android/internal/telephony/SubscriptionController.java +2 −1 Original line number Original line Diff line number Diff line Loading @@ -307,7 +307,8 @@ public class SubscriptionController extends ISub.Stub { broadcastSimInfoContentChanged(); broadcastSimInfoContentChanged(); TelephonyMetrics metrics = TelephonyMetrics.getInstance(); TelephonyMetrics metrics = TelephonyMetrics.getInstance(); metrics.updateActiveSubscriptionInfoList(mCacheActiveSubInfoList); metrics.updateActiveSubscriptionInfoList( Collections.unmodifiableList(mCacheActiveSubInfoList)); } } /** /** Loading
src/java/com/android/internal/telephony/metrics/TelephonyMetrics.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -714,14 +714,14 @@ public class TelephonyMetrics { } } /** Update active subscription info list. */ /** Update active subscription info list. */ public void updateActiveSubscriptionInfoList(List<SubscriptionInfo> subInfos) { public synchronized void updateActiveSubscriptionInfoList(List<SubscriptionInfo> subInfos) { List<Integer> inActivePhoneList = new ArrayList<>(); List<Integer> inActivePhoneList = new ArrayList<>(); for (int i = 0; i < mLastActiveSubscriptionInfos.size(); i++) { for (int i = 0; i < mLastActiveSubscriptionInfos.size(); i++) { inActivePhoneList.add(mLastActiveSubscriptionInfos.keyAt(i)); inActivePhoneList.add(mLastActiveSubscriptionInfos.keyAt(i)); } } for (SubscriptionInfo info : subInfos) { for (SubscriptionInfo info : subInfos) { int phoneId = SubscriptionManager.getPhoneId(info.getSubscriptionId()); int phoneId = info.getSimSlotIndex(); inActivePhoneList.removeIf(value -> value.equals(phoneId)); inActivePhoneList.removeIf(value -> value.equals(phoneId)); ActiveSubscriptionInfo activeSubscriptionInfo = new ActiveSubscriptionInfo(); ActiveSubscriptionInfo activeSubscriptionInfo = new ActiveSubscriptionInfo(); activeSubscriptionInfo.slotIndex = phoneId; activeSubscriptionInfo.slotIndex = phoneId; Loading