Merge "Stop expecting WifiConfig extra from CONFIGURED_NETWORKS_CHANGED_ACTION broadcast" into rvc-dev
diff --git a/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java b/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
index 7616c4b..8dd8d7a 100644
--- a/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
+++ b/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java
@@ -214,15 +214,7 @@
public void onReceive(Context context, Intent intent) {
switch (intent.getAction()) {
case WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION:
- if (!intent.getBooleanExtra(WifiManager.EXTRA_MULTIPLE_NETWORKS_CHANGED,
- false /* defaultValue */)) {
- // only one network changed
- WifiConfiguration wifiConfiguration = intent
- .getParcelableExtra(WifiManager.EXTRA_WIFI_CONFIGURATION);
- if (mAccessPoint.matches(wifiConfiguration)) {
- mWifiConfig = wifiConfiguration;
- }
- }
+ updateMatchingWifiConfig();
// fall through
case WifiManager.NETWORK_STATE_CHANGED_ACTION:
case WifiManager.RSSI_CHANGED_ACTION:
@@ -230,6 +222,17 @@
break;
}
}
+
+ private void updateMatchingWifiConfig() {
+ // use getPrivilegedConfiguredNetworks() to get Passpoint & other ephemeral networks
+ for (WifiConfiguration wifiConfiguration :
+ mWifiManager.getPrivilegedConfiguredNetworks()) {
+ if (mAccessPoint.matches(wifiConfiguration)) {
+ mWifiConfig = wifiConfiguration;
+ break;
+ }
+ }
+ }
};
private final NetworkRequest mNetworkRequest = new NetworkRequest.Builder()