wifi: catch UnsupportedOperationException for getMatchingWifiConfig

On a device without Passpoint support, an UnsupportedOperationException
will be thrown when invoking WifiManager#getMatchingWifiConfig.
So catch it to avoid crash.

Bug: 36649203
Test: manually set config_wifi_hotspot2_enabled to false and verify
      Settings app doesn't crash

Change-Id: I69f37897449033da9d21edda9953ad2738f7e314
This commit is contained in:
Peter Qiu
2017-03-27 13:45:25 -07:00
parent c75dbe9d9c
commit 0ffb89d1d1

View File

@@ -394,9 +394,13 @@ public class WifiTracker {
// the given ScanResult. This is used for showing that a given AP
// (ScanResult) is available via a Passpoint provider (provider friendly
// name).
WifiConfiguration config = mWifiManager.getMatchingWifiConfig(result);
if (config != null) {
accessPoint.update(config);
try {
WifiConfiguration config = mWifiManager.getMatchingWifiConfig(result);
if (config != null) {
accessPoint.update(config);
}
} catch (UnsupportedOperationException e) {
// Passpoint not supported on the device.
}
}