Fix usb tethering switch back to none after off/on the screen
This CL adds conditions to check whether usb is connected or not. If usb is not connected or tethering is not started don't update the state. Bug: 157709648 Test: make RunSettingsRoboTests -j56 Change-Id: Ifbf5900923419d6abf35834b196aab12601076e4
This commit is contained in:
@@ -63,7 +63,7 @@ public class UsbDefaultFragment extends RadioButtonPickerFragment {
|
||||
boolean mIsStartTethering = false;
|
||||
|
||||
private UsbConnectionBroadcastReceiver mUsbReceiver;
|
||||
private Handler mHandler = new Handler();
|
||||
private Handler mHandler;
|
||||
private boolean mIsConnected = false;
|
||||
|
||||
@VisibleForTesting
|
||||
@@ -71,14 +71,17 @@ public class UsbDefaultFragment extends RadioButtonPickerFragment {
|
||||
(connected, functions, powerRole, dataRole) -> {
|
||||
final long defaultFunctions = mUsbBackend.getDefaultUsbFunctions();
|
||||
Log.d(TAG, "UsbConnectionListener() connected : " + connected + ", functions : "
|
||||
+ functions + ", defaultFunctions : " + defaultFunctions);
|
||||
if (connected && !mIsConnected && defaultFunctions == UsbManager.FUNCTION_RNDIS) {
|
||||
+ functions + ", defaultFunctions : " + defaultFunctions
|
||||
+ ", mIsStartTethering : " + mIsStartTethering);
|
||||
if (connected && !mIsConnected && defaultFunctions == UsbManager.FUNCTION_RNDIS
|
||||
&& !mIsStartTethering) {
|
||||
startTethering();
|
||||
}
|
||||
|
||||
if (mIsStartTethering) {
|
||||
if (mIsStartTethering && connected) {
|
||||
mCurrentFunctions = functions;
|
||||
refresh(functions);
|
||||
mUsbBackend.setDefaultUsbFunctions(functions);
|
||||
mIsStartTethering = false;
|
||||
}
|
||||
mIsConnected = connected;
|
||||
@@ -91,6 +94,7 @@ public class UsbDefaultFragment extends RadioButtonPickerFragment {
|
||||
mTetheringManager = context.getSystemService(TetheringManager.class);
|
||||
mUsbReceiver = new UsbConnectionBroadcastReceiver(context, mUsbConnectionListener,
|
||||
mUsbBackend);
|
||||
mHandler = new Handler(context.getMainLooper());
|
||||
getSettingsLifecycle().addObserver(mUsbReceiver);
|
||||
mCurrentFunctions = mUsbBackend.getDefaultUsbFunctions();
|
||||
}
|
||||
|
Reference in New Issue
Block a user