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) {
|
private SubscriptionInfo getPhoneSubscriptionInfo(int slotId) {
|
||||||
final List<SubscriptionInfo> subscriptionInfoList = SubscriptionManager.from(
|
return SubscriptionManager.from(mContext).getActiveSubscriptionInfoForSimSlotIndex(slotId);
|
||||||
mContext).getActiveSubscriptionInfoList(true);
|
|
||||||
if (subscriptionInfoList != null && subscriptionInfoList.size() > slotId) {
|
|
||||||
return subscriptionInfoList.get(slotId);
|
|
||||||
} else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
|
Reference in New Issue
Block a user