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);
}
}