Settings: Use public API for mac randomization support
Also, don't directly reference the default tether ssid overlay. This info should always be retrieved from wifiManager. This ensures that we don't use wifi overlays in settings. Bug: 143464763 Test: atest com.android.server.wifi Change-Id: I893a4ca0f4243e1eb6f9c8bef810d0b4a493fb88
This commit is contained in:
@@ -116,8 +116,8 @@ public class HotspotConditionController implements ConditionalCardController {
|
|||||||
private CharSequence getSsid() {
|
private CharSequence getSsid() {
|
||||||
WifiConfiguration wifiConfig = mWifiManager.getWifiApConfiguration();
|
WifiConfiguration wifiConfig = mWifiManager.getWifiApConfiguration();
|
||||||
if (wifiConfig == null) {
|
if (wifiConfig == null) {
|
||||||
return mAppContext.getText(
|
// Should never happen.
|
||||||
com.android.internal.R.string.wifi_tether_configure_ssid_default);
|
return "";
|
||||||
} else {
|
} else {
|
||||||
return wifiConfig.SSID;
|
return wifiConfig.SSID;
|
||||||
}
|
}
|
||||||
|
@@ -261,8 +261,7 @@ public class WifiConfigController implements TextWatcher,
|
|||||||
mMeteredSettingsSpinner = mView.findViewById(R.id.metered_settings);
|
mMeteredSettingsSpinner = mView.findViewById(R.id.metered_settings);
|
||||||
mHiddenSettingsSpinner = mView.findViewById(R.id.hidden_settings);
|
mHiddenSettingsSpinner = mView.findViewById(R.id.hidden_settings);
|
||||||
mPrivacySettingsSpinner = mView.findViewById(R.id.privacy_settings);
|
mPrivacySettingsSpinner = mView.findViewById(R.id.privacy_settings);
|
||||||
if (mContext.getResources().getBoolean(
|
if (mWifiManager.isConnectedMacRandomizationSupported()) {
|
||||||
com.android.internal.R.bool.config_wifi_connected_mac_randomization_supported)) {
|
|
||||||
View privacySettingsLayout = mView.findViewById(R.id.privacy_settings_fields);
|
View privacySettingsLayout = mView.findViewById(R.id.privacy_settings_fields);
|
||||||
privacySettingsLayout.setVisibility(View.VISIBLE);
|
privacySettingsLayout.setVisibility(View.VISIBLE);
|
||||||
}
|
}
|
||||||
|
@@ -65,9 +65,8 @@ public class WifiPrivacyPreferenceController extends BasePreferenceController im
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return mContext.getResources().getBoolean(
|
return mWifiManager.isConnectedMacRandomizationSupported()
|
||||||
com.android.internal.R.bool.config_wifi_connected_mac_randomization_supported) ?
|
? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
|
||||||
AVAILABLE : CONDITIONALLY_UNAVAILABLE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package com.android.settings.wifi.tether;
|
package com.android.settings.wifi.tether;
|
||||||
|
|
||||||
|
import android.annotation.NonNull;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.net.ConnectivityManager;
|
import android.net.ConnectivityManager;
|
||||||
import android.net.wifi.WifiClient;
|
import android.net.wifi.WifiClient;
|
||||||
@@ -164,12 +165,12 @@ public class WifiTetherPreferenceController extends AbstractPreferenceController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateConfigSummary(WifiConfiguration wifiConfig) {
|
private void updateConfigSummary(@NonNull WifiConfiguration wifiConfig) {
|
||||||
final String s = mContext.getString(
|
if (wifiConfig == null) {
|
||||||
com.android.internal.R.string.wifi_tether_configure_ssid_default);
|
// Should never happen.
|
||||||
|
return;
|
||||||
|
}
|
||||||
mPreference.setSummary(mContext.getString(R.string.wifi_tether_enabled_subtext,
|
mPreference.setSummary(mContext.getString(R.string.wifi_tether_enabled_subtext,
|
||||||
BidiFormatter.getInstance().unicodeWrap(
|
BidiFormatter.getInstance().unicodeWrap(wifiConfig.SSID)));
|
||||||
(wifiConfig == null) ? s : wifiConfig.SSID)));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -61,11 +61,10 @@ public class HotspotConditionControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void buildContextualCard_noWifiAp_shouldHaveDefaultSsid() {
|
public void buildContextualCard_noWifiAp_shouldHaveEmptySsid() {
|
||||||
final ContextualCard card = mController.buildContextualCard();
|
final ContextualCard card = mController.buildContextualCard();
|
||||||
|
|
||||||
assertThat(card.getSummaryText()).isEqualTo(
|
assertThat(card.getSummaryText()).isEqualTo("");
|
||||||
mContext.getText(com.android.internal.R.string.wifi_tether_configure_ssid_default));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setupWifiApConfiguration() {
|
private void setupWifiApConfiguration() {
|
||||||
|
Reference in New Issue
Block a user