diff --git a/res/values/arrays.xml b/res/values/arrays.xml index c61059f715c..31b89f10401 100644 --- a/res/values/arrays.xml +++ b/res/values/arrays.xml @@ -1105,8 +1105,8 @@ - Use device MAC Use randomized MAC (default) + Use device MAC @@ -1121,8 +1121,8 @@ - 0 1 + 0 diff --git a/src/com/android/settings/wifi/details/WifiPrivacyPreferenceController.java b/src/com/android/settings/wifi/details/WifiPrivacyPreferenceController.java index 18be5425bf1..3bcdc5fad9c 100644 --- a/src/com/android/settings/wifi/details/WifiPrivacyPreferenceController.java +++ b/src/com/android/settings/wifi/details/WifiPrivacyPreferenceController.java @@ -61,7 +61,7 @@ public class WifiPrivacyPreferenceController extends BasePreferenceController im final DropDownPreference dropDownPreference = (DropDownPreference) preference; final int randomizationLevel = getRandomizationValue(); dropDownPreference.setValue(Integer.toString(randomizationLevel)); - updateSummary((DropDownPreference) preference, randomizationLevel); + updateSummary(dropDownPreference, randomizationLevel); } @Override @@ -85,7 +85,20 @@ public class WifiPrivacyPreferenceController extends BasePreferenceController im return WifiConfiguration.RANDOMIZATION_PERSISTENT; } + private final int PREF_RANDOMIZATION_PERSISTENT = 0; + private final int PREF_RANDOMIZATION_NONE = 1; + @VisibleForTesting + protected int translateMacRandomizedValueToPrefValue(int macRandomized) { + if (macRandomized == WifiConfiguration.RANDOMIZATION_PERSISTENT) { + return PREF_RANDOMIZATION_PERSISTENT; + } else { + return PREF_RANDOMIZATION_NONE; + } + } + private void updateSummary(DropDownPreference preference, int macRandomized) { - preference.setSummary(preference.getEntries()[macRandomized]); + // Translates value here to set RANDOMIZATION_PERSISTENT as first item in UI for better UX. + final int prefMacRandomized = translateMacRandomizedValueToPrefValue(macRandomized); + preference.setSummary(preference.getEntries()[prefMacRandomized]); } } diff --git a/tests/robotests/src/com/android/settings/wifi/details/WifiPrivacyPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/details/WifiPrivacyPreferenceControllerTest.java index 20c58380a0c..1e2e718a1dd 100644 --- a/tests/robotests/src/com/android/settings/wifi/details/WifiPrivacyPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/wifi/details/WifiPrivacyPreferenceControllerTest.java @@ -70,8 +70,9 @@ public class WifiPrivacyPreferenceControllerTest { mPreferenceController.updateState(mDropDownPreference); - - assertThat(mDropDownPreference.getEntry()).isEqualTo(perferenceString[PRIVACY_TRUSTED]); + int prefValue = mPreferenceController.translateMacRandomizedValueToPrefValue( + PRIVACY_TRUSTED); + assertThat(mDropDownPreference.getEntry()).isEqualTo(perferenceString[prefValue]); } @Test @@ -80,7 +81,9 @@ public class WifiPrivacyPreferenceControllerTest { mPreferenceController.updateState(mDropDownPreference); - assertThat(mDropDownPreference.getEntry()).isEqualTo(perferenceString[PRIVACY_RANDOMIZED]); + int prefValue = mPreferenceController.translateMacRandomizedValueToPrefValue( + PRIVACY_RANDOMIZED); + assertThat(mDropDownPreference.getEntry()).isEqualTo(perferenceString[prefValue]); } @Test