Add toast error message for no WiFi on wireless debugging.

Show a toast to connect to a WiFi network when the user tries to
enable wireless debugging while not connected to any Wi-Fi network.

Bug: 150139061
Bug: 149843499

Test: make RunSettingsRoboTests ROBOTEST_FILTER=WirelessDebuggingPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WirelessDebuggingEnablerTest

Change-Id: I389f5fddc874f60e8156ecf6ef2f1c6eddc1d7a5
Exempt-From-Owner-Approval: LGTM
(cherry picked from commit 564f6ba770)
This commit is contained in:
Joshua Duong
2020-03-02 08:34:26 -08:00
parent 9e118ed61e
commit 75ae058627
5 changed files with 153 additions and 8 deletions

View File

@@ -24,7 +24,9 @@ import android.os.Handler;
import android.os.Looper;
import android.provider.Settings;
import android.util.Log;
import android.widget.Toast;
import com.android.settings.R;
import com.android.settings.widget.SwitchWidgetController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
@@ -121,6 +123,15 @@ public class WirelessDebuggingEnabler implements SwitchWidgetController.OnSwitch
@Override
public boolean onSwitchToggled(boolean isChecked) {
if (isChecked && !WirelessDebuggingPreferenceController.isWifiConnected(mContext)) {
// No connected Wi-Fi network. Reset the switch to off.
Toast.makeText(
mContext, R.string.adb_wireless_no_network_msg, Toast.LENGTH_LONG)
.show();
mSwitchWidget.setChecked(false);
return false;
}
writeAdbWifiSetting(isChecked);
return true;
}