summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/wifi
diff options
context:
space:
mode:
authorxinhe <xinhe@google.com>2015-07-14 22:29:17 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-07-14 22:29:32 +0000
commitd7fb46de591943c402dd13551ca603081ac4e6a7 (patch)
treec4213691ef0fe0ef41f0ae1c322cb6870b59cd98 /src/com/android/settings/wifi
parente641e7d706095b54ac89f6fcb58c66e2190f46c7 (diff)
parentcbdcca6cf6326af64b13832b797cf28250e0a417 (diff)
downloadpackages_apps_Settings-d7fb46de591943c402dd13551ca603081ac4e6a7.zip
packages_apps_Settings-d7fb46de591943c402dd13551ca603081ac4e6a7.tar.gz
packages_apps_Settings-d7fb46de591943c402dd13551ca603081ac4e6a7.tar.bz2
Merge "Need to disable 5GHz bands for WiFi tethering in Japan" into mnc-dev
Diffstat (limited to 'src/com/android/settings/wifi')
-rw-r--r--src/com/android/settings/wifi/WifiApEnabler.java19
1 files changed, 15 insertions, 4 deletions
diff --git a/src/com/android/settings/wifi/WifiApEnabler.java b/src/com/android/settings/wifi/WifiApEnabler.java
index bf2fa38..741c4a7 100644
--- a/src/com/android/settings/wifi/WifiApEnabler.java
+++ b/src/com/android/settings/wifi/WifiApEnabler.java
@@ -47,8 +47,15 @@ public class WifiApEnabler {
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (WifiManager.WIFI_AP_STATE_CHANGED_ACTION.equals(action)) {
- handleWifiApStateChanged(intent.getIntExtra(
- WifiManager.EXTRA_WIFI_AP_STATE, WifiManager.WIFI_AP_STATE_FAILED));
+ int state = intent.getIntExtra(
+ WifiManager.EXTRA_WIFI_AP_STATE, WifiManager.WIFI_AP_STATE_FAILED);
+ if (state == WifiManager.WIFI_AP_STATE_FAILED) {
+ int reason = intent.getIntExtra(WifiManager.EXTRA_WIFI_AP_FAILURE_REASON,
+ WifiManager.SAP_START_FAILURE_GENERAL);
+ handleWifiApStateChanged(state, reason);
+ } else {
+ handleWifiApStateChanged(state, WifiManager.SAP_START_FAILURE_GENERAL);
+ }
} else if (ConnectivityManager.ACTION_TETHER_STATE_CHANGED.equals(action)) {
ArrayList<String> available = intent.getStringArrayListExtra(
ConnectivityManager.EXTRA_AVAILABLE_TETHER);
@@ -142,7 +149,7 @@ public class WifiApEnabler {
}
}
- private void handleWifiApStateChanged(int state) {
+ private void handleWifiApStateChanged(int state, int reason) {
switch (state) {
case WifiManager.WIFI_AP_STATE_ENABLING:
mSwitch.setSummary(R.string.wifi_tether_starting);
@@ -169,7 +176,11 @@ public class WifiApEnabler {
break;
default:
mSwitch.setChecked(false);
- mSwitch.setSummary(R.string.wifi_error);
+ if (reason == WifiManager.SAP_START_FAILURE_NO_CHANNEL) {
+ mSwitch.setSummary(R.string.wifi_sap_no_channel_error);
+ } else {
+ mSwitch.setSummary(R.string.wifi_error);
+ }
enableWifiSwitch();
}
}