diff --git a/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java b/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java index b323f910af5..d2ec162a423 100644 --- a/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java +++ b/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceController.java @@ -126,7 +126,6 @@ public class EnabledNetworkModePreferenceController extends BasePreferenceContro private void updatePreferenceEntries(ListPreference preference) { final int phoneType = mTelephonyManager.getPhoneType(); - final Resources resources = mContext.getResources(); final PersistableBundle carrierConfig = mCarrierConfigManager.getConfigForSubId(mSubId); if (phoneType == PhoneConstants.PHONE_TYPE_CDMA) { final int lteForced = android.provider.Settings.Global.getInt( @@ -216,6 +215,7 @@ public class EnabledNetworkModePreferenceController extends BasePreferenceContro } private void updatePreferenceValueAndSummary(ListPreference preference, int networkMode) { + preference.setValue(Integer.toString(networkMode)); switch (networkMode) { case TelephonyManager.NETWORK_MODE_TDSCDMA_WCDMA: case TelephonyManager.NETWORK_MODE_TDSCDMA_GSM_WCDMA: diff --git a/tests/robotests/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceControllerTest.java index 9b8a3e379f5..ba8be908c79 100644 --- a/tests/robotests/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/network/telephony/EnabledNetworkModePreferenceControllerTest.java @@ -124,6 +124,18 @@ public class EnabledNetworkModePreferenceControllerTest { assertThat(mPreference.getSummary()).isEqualTo("3G"); } + @Test + public void updateState_updateByNetworkMode_useDefaultValue() { + Settings.Global.putInt(mContext.getContentResolver(), + Settings.Global.PREFERRED_NETWORK_MODE + SUB_ID, + TelephonyManager.NETWORK_MODE_LTE_GSM_WCDMA); + + mController.updateState(mPreference); + + assertThat(mPreference.getValue()).isEqualTo( + String.valueOf(TelephonyManager.NETWORK_MODE_LTE_GSM_WCDMA)); + } + @Test public void onPreferenceChange_updateSuccess() { doReturn(true).when(mTelephonyManager).setPreferredNetworkType(SUB_ID,