diff --git a/res/values/strings.xml b/res/values/strings.xml index 8ee96e414e9..b119f2abd08 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -3784,6 +3784,8 @@ Mobile networks Wi-Fi networks + + To select metered Wi-Fi networks, turn Wi-Fi on. Emergency call diff --git a/res/xml/data_usage_metered_prefs.xml b/res/xml/data_usage_metered_prefs.xml index 7ec30592ebf..a0c6df4633d 100644 --- a/res/xml/data_usage_metered_prefs.xml +++ b/res/xml/data_usage_metered_prefs.xml @@ -29,6 +29,14 @@ + android:persistent="false"> + + + + diff --git a/src/com/android/settings/net/DataUsageMeteredSettings.java b/src/com/android/settings/net/DataUsageMeteredSettings.java index fea8a12a68b..69326bc85d0 100644 --- a/src/com/android/settings/net/DataUsageMeteredSettings.java +++ b/src/com/android/settings/net/DataUsageMeteredSettings.java @@ -48,6 +48,7 @@ public class DataUsageMeteredSettings extends SettingsPreferenceFragment { private PreferenceCategory mMobileCategory; private PreferenceCategory mWifiCategory; + private Preference mWifiDisabled; @Override public void onCreate(Bundle icicle) { @@ -63,9 +64,9 @@ public class DataUsageMeteredSettings extends SettingsPreferenceFragment { addPreferencesFromResource(R.xml.data_usage_metered_prefs); mMobileCategory = (PreferenceCategory) findPreference("mobile"); mWifiCategory = (PreferenceCategory) findPreference("wifi"); + mWifiDisabled = findPreference("wifi_disabled"); updateNetworks(context); - } private void updateNetworks(Context context) { @@ -76,15 +77,15 @@ public class DataUsageMeteredSettings extends SettingsPreferenceFragment { getPreferenceScreen().removePreference(mMobileCategory); } - if (hasWifiRadio(context)) { - mWifiCategory.removeAll(); + mWifiCategory.removeAll(); + if (hasWifiRadio(context) && mWifiManager.isWifiEnabled()) { for (WifiConfiguration config : mWifiManager.getConfiguredNetworks()) { if (config.SSID != null) { mWifiCategory.addPreference(buildWifiPref(context, config)); } } } else { - getPreferenceScreen().removePreference(mWifiCategory); + mWifiCategory.addPreference(mWifiDisabled); } }