Merge "Settings: migrate usage of @hide NetworkSuggestion APIs"

This commit is contained in:
David Su
2020-01-21 17:05:24 +00:00
committed by Android (Google) Code Review
2 changed files with 19 additions and 29 deletions

View File

@@ -333,44 +333,34 @@ public class AddAppNetworksFragment extends InstrumentedFragment implements
* networks, for creating UI to user. * networks, for creating UI to user.
*/ */
@VisibleForTesting @VisibleForTesting
void filterSavedNetworks( void filterSavedNetworks(List<WifiConfiguration> savedWifiConfigurations) {
List<WifiConfiguration> savedWifiConfigurations) {
if (mUiToRequestedList == null) { if (mUiToRequestedList == null) {
mUiToRequestedList = new ArrayList<>(); mUiToRequestedList = new ArrayList<>();
} else { } else {
mUiToRequestedList.clear(); mUiToRequestedList.clear();
} }
boolean foundInSavedList;
boolean foundError;
String displayedName = null;
int networkPositionInBundle = 0; int networkPositionInBundle = 0;
for (WifiNetworkSuggestion suggestion : mAllSpecifiedNetworksList) { for (WifiNetworkSuggestion suggestion : mAllSpecifiedNetworksList) {
foundInSavedList = false; String displayedName = null;
foundError = false; boolean foundInSavedList = false;
/** /*
* If specified is passpoint network, need to check with the existing passpoint * If specified is passpoint network, need to check with the existing passpoint
* networks. * networks.
*/ */
if (suggestion.passpointConfiguration != null) { final PasspointConfiguration passpointConfig = suggestion.getPasspointConfiguration();
if (!suggestion.passpointConfiguration.validate()) { if (passpointConfig != null) {
foundError = true; foundInSavedList = isSavedPasspointConfiguration(passpointConfig);
} else { displayedName = passpointConfig.getHomeSp().getFriendlyName();
foundInSavedList = isSavedPasspointConfiguration(
suggestion.passpointConfiguration);
displayedName = suggestion.passpointConfiguration.getHomeSp().getFriendlyName();
}
} else { } else {
final WifiConfiguration specifiedConfig = suggestion.wifiConfiguration; final WifiConfiguration specifiedConfig = suggestion.getWifiConfiguration();
displayedName = removeDoubleQuotes(specifiedConfig.SSID); displayedName = removeDoubleQuotes(specifiedConfig.SSID);
foundInSavedList = isSavedWifiConfiguration(specifiedConfig, foundInSavedList = isSavedWifiConfiguration(specifiedConfig,
savedWifiConfigurations); savedWifiConfigurations);
} }
if (foundError) { if (foundInSavedList) {
mResultCodeArrayList.set(networkPositionInBundle, RESULT_NETWORK_ADD_ERROR);
} else if (foundInSavedList) {
// If this requested network already in the saved networks, mark this item in the // If this requested network already in the saved networks, mark this item in the
// result code list as existed. // result code list as existed.
mResultCodeArrayList.set(networkPositionInBundle, RESULT_NETWORK_ALREADY_EXISTS); mResultCodeArrayList.set(networkPositionInBundle, RESULT_NETWORK_ALREADY_EXISTS);
@@ -609,11 +599,12 @@ public class AddAppNetworksFragment extends InstrumentedFragment implements
* Call framework API to save single network. * Call framework API to save single network.
*/ */
private void saveNetwork(int index) { private void saveNetwork(int index) {
if (mUiToRequestedList.get(index).mWifiNetworkSuggestion.passpointConfiguration != null) { final PasspointConfiguration passpointConfig =
mUiToRequestedList.get(index).mWifiNetworkSuggestion.getPasspointConfiguration();
if (passpointConfig != null) {
// Save passpoint, if no IllegalArgumentException, then treat it as success. // Save passpoint, if no IllegalArgumentException, then treat it as success.
try { try {
mWifiManager.addOrUpdatePasspointConfiguration(mUiToRequestedList.get( mWifiManager.addOrUpdatePasspointConfiguration(passpointConfig);
index).mWifiNetworkSuggestion.passpointConfiguration);
mAnyNetworkSavedSuccess = true; mAnyNetworkSavedSuccess = true;
} catch (IllegalArgumentException e) { } catch (IllegalArgumentException e) {
mResultCodeArrayList.set(mUiToRequestedList.get(index).mIndex, mResultCodeArrayList.set(mUiToRequestedList.get(index).mIndex,
@@ -625,18 +616,17 @@ public class AddAppNetworksFragment extends InstrumentedFragment implements
} }
// Show saved or failed according to all results. // Show saved or failed according to all results.
showSavedOrFail(); showSavedOrFail();
return;
} else { } else {
final WifiConfiguration wifiConfiguration = mUiToRequestedList.get( final WifiConfiguration wifiConfiguration =
index).mWifiNetworkSuggestion.wifiConfiguration; mUiToRequestedList.get(index).mWifiNetworkSuggestion.getWifiConfiguration();
wifiConfiguration.SSID = addQuotationIfNeeded(wifiConfiguration.SSID); wifiConfiguration.SSID = addQuotationIfNeeded(wifiConfiguration.SSID);
mWifiManager.save(wifiConfiguration, mSaveListener); mWifiManager.save(wifiConfiguration, mSaveListener);
} }
} }
private void connectNetwork(int index) { private void connectNetwork(int index) {
final WifiConfiguration wifiConfiguration = mUiToRequestedList.get( final WifiConfiguration wifiConfiguration =
index).mWifiNetworkSuggestion.wifiConfiguration; mUiToRequestedList.get(index).mWifiNetworkSuggestion.getWifiConfiguration();
mWifiManager.connect(wifiConfiguration, null /* ActionListener */); mWifiManager.connect(wifiConfiguration, null /* ActionListener */);
} }

View File

@@ -160,7 +160,7 @@ public class AddAppNetworksFragmentTest {
assertThat(mAddAppNetworksFragment.mResultCodeArrayList.get(0)).isEqualTo( assertThat(mAddAppNetworksFragment.mResultCodeArrayList.get(0)).isEqualTo(
mAddAppNetworksFragment.RESULT_NETWORK_ALREADY_EXISTS); mAddAppNetworksFragment.RESULT_NETWORK_ALREADY_EXISTS);
assertThat(mAddAppNetworksFragment.mUiToRequestedList.get( assertThat(mAddAppNetworksFragment.mUiToRequestedList.get(
0).mWifiNetworkSuggestion.wifiConfiguration.SSID).isEqualTo( 0).mWifiNetworkSuggestion.getWifiConfiguration().SSID).isEqualTo(
FAKE_NEW_OPEN_SSID_WITH_QUOTE); FAKE_NEW_OPEN_SSID_WITH_QUOTE);
} }