To disable Wi-Fi tethering when user restriction is set

Bug: 203168953
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherPreferenceControllerTest
Change-Id: I749de121c3918382bf03e437e683477bac23cae1
This commit is contained in:
changbetty
2021-12-16 08:30:22 +00:00
parent 69bf767960
commit efd5d04ab1
2 changed files with 32 additions and 0 deletions

View File

@@ -36,6 +36,7 @@ import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
import com.android.settingslib.wifi.WifiEnterpriseRestrictionUtils;
import java.util.List;
@@ -48,6 +49,8 @@ public class WifiTetherPreferenceController extends AbstractPreferenceController
private final String[] mWifiRegexs;
private final WifiManager mWifiManager;
private final Lifecycle mLifecycle;
@VisibleForTesting
boolean mIsWifiTetheringAllow;
private int mSoftApState;
@VisibleForTesting
Preference mPreference;
@@ -65,6 +68,7 @@ public class WifiTetherPreferenceController extends AbstractPreferenceController
mTetheringManager = context.getSystemService(TetheringManager.class);
mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
mWifiRegexs = mTetheringManager.getTetherableWifiRegexs();
mIsWifiTetheringAllow = WifiEnterpriseRestrictionUtils.isWifiTetheringAllowed(context);
mLifecycle = lifecycle;
if (lifecycle != null) {
lifecycle.addObserver(this);
@@ -89,6 +93,7 @@ public class WifiTetherPreferenceController extends AbstractPreferenceController
// unavailable
return;
}
mPreference.setEnabled(mIsWifiTetheringAllow);
}
@Override