Fix incorrect mapping to get subscriptioninfo
getActiveSubscriptionInfoList() returns a list of active subscription. It doesn't 1:1 mapping with slotId. So it is not correct to use slotId as index to get subscriptioninfo from list. Use framework interface getActiveSubscriptionInfoForSimSlotIndex() to get subscriptioninfo per slotid instead. Bug: 131123246 Test: Test with dual SIM device and atest SimStatusDialogControllerTest pass Change-Id: If7140f602571a5cb8dcdfff939bd84ccff0b482f
This commit is contained in:
@@ -406,13 +406,7 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
|
||||
}
|
||||
|
||||
private SubscriptionInfo getPhoneSubscriptionInfo(int slotId) {
|
||||
final List<SubscriptionInfo> subscriptionInfoList = SubscriptionManager.from(
|
||||
mContext).getActiveSubscriptionInfoList(true);
|
||||
if (subscriptionInfoList != null && subscriptionInfoList.size() > slotId) {
|
||||
return subscriptionInfoList.get(slotId);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return SubscriptionManager.from(mContext).getActiveSubscriptionInfoForSimSlotIndex(slotId);
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
|
Reference in New Issue
Block a user