Merge "[Settings] 1. Provision status checking of eSIM 2. Show SIM if isOpportunistic is false"

This commit is contained in:
Zoey Chen
2022-12-16 14:08:43 +00:00
committed by Android (Google) Code Review

View File

@@ -15,6 +15,7 @@
*/ */
package com.android.settings.network; package com.android.settings.network;
import static android.telephony.SubscriptionManager.PROFILE_CLASS_PROVISIONING;
import static android.telephony.UiccSlotInfo.CARD_STATE_INFO_PRESENT; import static android.telephony.UiccSlotInfo.CARD_STATE_INFO_PRESENT;
import static com.android.internal.telephony.TelephonyIntents.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED; import static com.android.internal.telephony.TelephonyIntents.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED;
@@ -265,7 +266,7 @@ public class MobileNetworkRepository extends SubscriptionManager.OnSubscriptions
mPortIndex = portInfo.getPortIndex(); mPortIndex = portInfo.getPortIndex();
} else if (DEBUG) { } 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); + mSubId);
} }
}); });
if (mPhysicalSlotIndex != SubscriptionManager.INVALID_SIM_SLOT_INDEX) { if (mPhysicalSlotIndex != SubscriptionManager.INVALID_SIM_SLOT_INDEX) {
@@ -324,7 +325,12 @@ public class MobileNetworkRepository extends SubscriptionManager.OnSubscriptions
SubscriptionInfoEntity subInfoEntity = SubscriptionInfoEntity subInfoEntity =
convertToSubscriptionInfoEntity(context, info); convertToSubscriptionInfoEntity(context, info);
if (subInfoEntity != null) { if (subInfoEntity != null) {
mSubscriptionInfoMap.put(info.getSubscriptionId(), info); int subId = info.getSubscriptionId();
mSubscriptionInfoMap.put(subId, info);
if (DEBUG) {
Log.d(TAG, "convert subId " + subId + "to SubscriptionInfoEntity: "
+ subInfoEntity);
}
mMobileNetworkDatabase.insertSubsInfo(subInfoEntity); mMobileNetworkDatabase.insertSubsInfo(subInfoEntity);
mMetricsFeatureProvider.action(mContext, mMetricsFeatureProvider.action(mContext,
SettingsEnums.ACTION_MOBILE_NETWORK_DB_INSERT_SUB_INFO); SettingsEnums.ACTION_MOBILE_NETWORK_DB_INSERT_SUB_INFO);
@@ -401,13 +407,21 @@ public class MobileNetworkRepository extends SubscriptionManager.OnSubscriptions
} }
public void insertUiccInfo() { public void insertUiccInfo() {
mMobileNetworkDatabase.insertUiccInfo(convertToUiccInfoEntity()); UiccInfoEntity uiccInfoEntity = convertToUiccInfoEntity();
if (DEBUG) {
Log.d(TAG, "uiccInfoEntity = " + uiccInfoEntity);
}
mMobileNetworkDatabase.insertUiccInfo(uiccInfoEntity);
mMetricsFeatureProvider.action(mContext, mMetricsFeatureProvider.action(mContext,
SettingsEnums.ACTION_MOBILE_NETWORK_DB_INSERT_UICC_INFO); SettingsEnums.ACTION_MOBILE_NETWORK_DB_INSERT_UICC_INFO);
} }
public void insertMobileNetworkInfo(Context context) { public void insertMobileNetworkInfo(Context context) {
mMobileNetworkDatabase.insertMobileNetworkInfo(convertToMobileNetworkInfoEntity(context)); MobileNetworkInfoEntity mobileNetworkInfoEntity = convertToMobileNetworkInfoEntity(context);
if (DEBUG) {
Log.d(TAG, "mobileNetworkInfoEntity = " + mobileNetworkInfoEntity);
}
mMobileNetworkDatabase.insertMobileNetworkInfo(mobileNetworkInfoEntity);
mMetricsFeatureProvider.action(mContext, mMetricsFeatureProvider.action(mContext,
SettingsEnums.ACTION_MOBILE_NETWORK_DB_INSERT_MOBILE_NETWORK_INFO); SettingsEnums.ACTION_MOBILE_NETWORK_DB_INSERT_MOBILE_NETWORK_INFO);
} }
@@ -449,7 +463,8 @@ public class MobileNetworkRepository extends SubscriptionManager.OnSubscriptions
@Override @Override
public void onSubscriptionsChanged() { public void onSubscriptionsChanged() {
insertAvailableSubInfoToEntity(mSubscriptionManager.getAvailableSubscriptionInfoList()); insertAvailableSubInfoToEntity(
SubscriptionUtil.getSelectableSubscriptionInfoList(mContext));
} }
private void insertAvailableSubInfoToEntity(List<SubscriptionInfo> availableInfoList) { private void insertAvailableSubInfoToEntity(List<SubscriptionInfo> availableInfoList) {
@@ -470,8 +485,14 @@ public class MobileNetworkRepository extends SubscriptionManager.OnSubscriptions
for (SubscriptionInfo subInfo : infoArray) { for (SubscriptionInfo subInfo : infoArray) {
mSubscriptionInfoMap.remove(subInfo.getSubscriptionId()); mSubscriptionInfoMap.remove(subInfo.getSubscriptionId());
if (DEBUG) { if (DEBUG) {
Log.d(TAG, Log.d(TAG, "insert subInfo to subInfoEntity, subInfo = " + subInfo);
"insert sudInfo " + subInfo.getSubscriptionId() + " to subInfoEntity"); }
if (subInfo.isEmbedded()
&& subInfo.getProfileClass() == PROFILE_CLASS_PROVISIONING) {
if (DEBUG) {
Log.d(TAG, "Do not insert the provision eSIM");
}
continue;
} }
insertSubInfo(mContext, subInfo); insertSubInfo(mContext, subInfo);
} }