[Telephony Setting] Add supplementary conditions for CDMA display IMEI info when subscriptionInfo is null

Bug: 149307162
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ImeiInfoDialogControllerTest
Change-Id: I1dd83ba55b34433b2b600b8a998000347b6ae5e8
Merged-In: I011b52fd25ca9ad48be3afcdabd9bdd443cd121d
This commit is contained in:
changbetty
2020-02-21 21:57:13 +08:00
parent 936ebd0367
commit 288fa30c2d
2 changed files with 42 additions and 1 deletions

View File

@@ -119,7 +119,8 @@ public class ImeiInfoDialogController {
mDialog.setText(ID_PRL_VERSION_VALUE, getCdmaPrlVersion());
if (mSubscriptionInfo != null && isCdmaLteEnabled()) {
if ((mSubscriptionInfo != null && isCdmaLteEnabled()) ||
(mSubscriptionInfo == null && isSimPresent(mSlotId))) {
// Show IMEI for LTE device
mDialog.setText(ID_IMEI_VALUE,
getTextAsDigits(mTelephonyManager.getImei(mSlotId)));
@@ -151,6 +152,15 @@ public class ImeiInfoDialogController {
== PhoneConstants.LTE_ON_CDMA_TRUE;
}
boolean isSimPresent(int slotId) {
final int simState = mTelephonyManager.getSimState(slotId);
if ((simState != TelephonyManager.SIM_STATE_ABSENT) &&
(simState != TelephonyManager.SIM_STATE_UNKNOWN)) {
return true;
}
return false;
}
@VisibleForTesting
String getMeid() {
return mTelephonyManager.getMeid(mSlotId);