Wifi Setting: Use SoftApConfiguration for Tether Setting
Bug: 145578449 Test: Manual Test: make RunSettingsRoboTests ROBOTEST_FILTER=CodeInspectionTest Change-Id: I02b4dcbb7b6e29b67ecc7356200f3fc3a1007562
This commit is contained in:
@@ -24,14 +24,15 @@ import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.net.wifi.WifiConfiguration;
|
||||
import android.net.wifi.SoftApConfiguration;
|
||||
import android.net.wifi.WifiManager;
|
||||
import android.os.Bundle;
|
||||
import android.os.UserManager;
|
||||
import android.provider.SearchIndexableResource;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.preference.PreferenceGroup;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.dashboard.RestrictedDashboardFragment;
|
||||
@@ -41,8 +42,8 @@ import com.android.settings.widget.SwitchBarController;
|
||||
import com.android.settingslib.TetherUtil;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.search.SearchIndexable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@SearchIndexable
|
||||
@@ -187,8 +188,8 @@ public class WifiTetherSettings extends RestrictedDashboardFragment
|
||||
|
||||
@Override
|
||||
public void onTetherConfigUpdated(AbstractPreferenceController context) {
|
||||
final WifiConfiguration config = buildNewConfig();
|
||||
mPasswordPreferenceController.updateVisibility(config.getAuthType());
|
||||
final SoftApConfiguration config = buildNewConfig();
|
||||
mPasswordPreferenceController.updateVisibility(config.getSecurityType());
|
||||
|
||||
/**
|
||||
* if soft AP is stopped, bring up
|
||||
@@ -201,23 +202,23 @@ public class WifiTetherSettings extends RestrictedDashboardFragment
|
||||
mRestartWifiApAfterConfigChange = true;
|
||||
mSwitchBarController.stopTether();
|
||||
}
|
||||
mWifiManager.setWifiApConfiguration(config);
|
||||
mWifiManager.setSoftApConfiguration(config);
|
||||
|
||||
if (context instanceof WifiTetherSecurityPreferenceController) {
|
||||
reConfigInitialExpandedChildCount();
|
||||
}
|
||||
}
|
||||
|
||||
private WifiConfiguration buildNewConfig() {
|
||||
final WifiConfiguration config = new WifiConfiguration();
|
||||
private SoftApConfiguration buildNewConfig() {
|
||||
final SoftApConfiguration.Builder configBuilder = new SoftApConfiguration.Builder();
|
||||
final int securityType = mSecurityPreferenceController.getSecurityType();
|
||||
|
||||
config.SSID = mSSIDPreferenceController.getSSID();
|
||||
config.allowedKeyManagement.set(securityType);
|
||||
config.preSharedKey = mPasswordPreferenceController.getPasswordValidated(securityType);
|
||||
config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);
|
||||
config.apBand = mApBandPreferenceController.getBandIndex();
|
||||
return config;
|
||||
configBuilder.setSsid(mSSIDPreferenceController.getSSID());
|
||||
if (securityType == SoftApConfiguration.SECURITY_TYPE_WPA2_PSK) {
|
||||
configBuilder.setWpa2Passphrase(
|
||||
mPasswordPreferenceController.getPasswordValidated(securityType));
|
||||
}
|
||||
configBuilder.setBand(mApBandPreferenceController.getBandIndex());
|
||||
return configBuilder.build();
|
||||
}
|
||||
|
||||
private void startTether() {
|
||||
@@ -286,7 +287,8 @@ public class WifiTetherSettings extends RestrictedDashboardFragment
|
||||
|
||||
private void reConfigInitialExpandedChildCount() {
|
||||
final PreferenceGroup screen = getPreferenceScreen();
|
||||
if (mSecurityPreferenceController.getSecurityType() == WifiConfiguration.KeyMgmt.NONE) {
|
||||
if (mSecurityPreferenceController.getSecurityType()
|
||||
== SoftApConfiguration.SECURITY_TYPE_OPEN) {
|
||||
screen.setInitialExpandedChildrenCount(EXPANDED_CHILD_COUNT_WITH_SECURITY_NON);
|
||||
return;
|
||||
}
|
||||
@@ -299,7 +301,8 @@ public class WifiTetherSettings extends RestrictedDashboardFragment
|
||||
return EXPANDED_CHILD_COUNT_DEFAULT;
|
||||
}
|
||||
|
||||
return (mSecurityPreferenceController.getSecurityType() == WifiConfiguration.KeyMgmt.NONE) ?
|
||||
EXPANDED_CHILD_COUNT_WITH_SECURITY_NON : EXPANDED_CHILD_COUNT_DEFAULT;
|
||||
return (mSecurityPreferenceController.getSecurityType()
|
||||
== SoftApConfiguration.SECURITY_TYPE_OPEN)
|
||||
? EXPANDED_CHILD_COUNT_WITH_SECURITY_NON : EXPANDED_CHILD_COUNT_DEFAULT;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user