History log of /frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6f6fe75572350217e717d4f5465f3ad5918db436 22-Mar-2018 Salvador Martinez <dehboxturtle@google.com> Update wifi header summary text to show metered state

When we detect a network as metered or the user manually overrides
the metered state for a network we should show this in the summary
text for the network. This CL makes it so that this state overrides
the network speed when needed.

Test: robotests
Bug: 68030417
Change-Id: Ia1f3f0a537b6ff711a430466b83664d8f1cad0b6
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
e74dbdd364f0ed5ab1b208e9a5643bddfbafb76f 09-Mar-2018 Amin Shaikh <ashaikh@google.com> Show status labels in wifi QS tile.

- Request a score for the current network upon network state change
- Track the status label (either sign in / no internet / wifi speed
label) in WifiStatusTracker/WifiSignalController

Bug: 74075761
Test: runtest systemui && visual

Change-Id: I0794b246683df769f6db79f2baf70a9226d8f0f1
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
5d14fd7b657c9cc2ece5507b96d47a2a0e5b3e25 15-Feb-2018 Sundeep Ghuman <sghuman@google.com> Safeguard against NPE race condition.

It is possible for the main activity to be quit before the posted
message is executed, safeguard against NPEs in this scenario.

Bug: 73484470
Test: runtest --path frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.jav
Change-Id: I34b40089ef2eae213c804e4e379d6ab7825bbceb
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
bb39991c525f69cc5ed3829ab13abff7c4e721ef 30-Jan-2018 Sundeep Ghuman <sghuman@google.com> Remove the double lists in WifiTracker.

This CL completes the final removal of the double handler, double list,
pending notification complexity that was introduced ag/1396615 as a
'fix' to improper API implementation of the AccessPointListener
callback. The implementation erroneously refetched the entire
WifiTracker list and then performed its own sorting everytime an
individual AccessPoint was updated, instead of waiting for WifiTracker's
WifiListener.onAccessPointsChanged (plural) method instead.

Those changes have now been reverted, and the underlying SetupWizard
code has changed since then such that it does not need to be modified to
prevent regressions.

Bug: 37674366
Test: 1. runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java
2. runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java
3. Manual testing of WifiSettings for visual jank
4. Startup and manual inspection of SetupWizard Wifi Picker.

Change-Id: Ia4079859a7a892983ecf55ba8eab13d20120ff99
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
c0cf84845a63966db1a79604b5df7985d913d1ae 27-Jan-2018 Sundeep Ghuman <sghuman@google.com> Remove methods from MainHandler.

Followup from ag/3516264 where callbacks are now already invoked on the
main thread. There is no reason to execute this methods on the
MainThread. Removing UPDATE_ACCESS_POINTS in following CL as it has more logic
in that requires careful modification.

Also make changes to how verbose logging is determined (now respects
logging tag as well as developer option) and log callbacks.

Bug: 37674366
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java

Change-Id: I373af3a65596d478ec25bd2c67a41fc3c7033beb
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
0d492e8365d1d8ca3b5469f697e1a9c6b484023b 26-Jan-2018 Sundeep Ghuman <sghuman@google.com> Clean up updateAccessPoints.

Remove obsolete logic, refactor for efficiency and readability. No
longer make redundant, duplicate IPCs.

Bug: b/68030053
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java

Change-Id: I1a1077c1adaacbd759521451a994a7655befdf58
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
04f7f34a713062ec3fd54a4c19481e9f76819899 24-Jan-2018 Sundeep Ghuman <sghuman@google.com> Remove double cache eviction logic.

WifiTracker and AccessPoint both maintain their own caches of
ScanResults and dictate their own grouping logic. This leads to various
issues, such as dropping APs during network selection. Remove the double
cache eviction logic, making WifiTracker the source of truth for
evicting and grouping ScanResults.

Consolidate on AccessPoint time based eviction logic. In place swap of
logic, with subsequent wifi tracker clean up and cache rekeying to
follow in later CLs. Logic was left as close to original location for
reviewer ease and will be rearranged in following CLs.

Moves existing key generation logic from AccessPointPreference into
AccessPoint.java

BUG: 64989100
Test: runtest runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java
runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java
make RunSettingsLibRoboTests
make RunSettingsRoboTests
Manual inspection of WifiSettings jitter when changing networks / moving
across floors.

Change-Id: Id30a34b08e14fc8da2c9d29dfcb5d1e8973cc18c
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
9ee9b39eb4582f0e53b4f40738949c20e28630d4 22-Dec-2017 jackqdyulei <jackqdyulei@google.com> Move debug log summary to WifiUtils

This cl is the first step to clean up the AccessPoint.

Bug: 70983952
Test: RunSettingsLibRoboTests
Change-Id: I23b5b4bee6f4533ea7e59ede3dc9c66af80bf0b6
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
db9b94c195f056248b1f5c3b4ef5e907c1b82028 06-Sep-2017 Sundeep Ghuman <sghuman@google.com> Do not pause scanning during Network state changes.

This prevents UI bugs in WifiSettings where scan results would become to
old upon switching networks and thus all the APs would be removed from
the wifi picker. Now scanning is only paused/resumed during start/stop
tracking as well as on wifi state changes between enabled/ not enabled.

Also adds additional logging to scan result age in verbose logging.

Bug: b/64989100
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java
Manual: 1. Repeated switch back and forth between different networks.
2. Ensure that AccessPoints in WifiSettings do not disappear after new
connections.

Change-Id: I11e424bcce799a5f3d003a955dcee004294058b7
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
9bb85d3c4d0698e41dd5a27a534d55d9f983daaf 29-Aug-2017 Sundeep Ghuman <sghuman@google.com> Change score cache eviction time to settings value.

Reduce default eviction time from intended 24 hours (erroneously input
as 24 days) to 20 minutes.

Bug: b/63073866
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I89eae2483b9a65a65d7cf5b1151952609b6b7fd7
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
d1411d9ef23f2c08e99f401c0f3e25a509725c95 06-Sep-2017 Sundeep Ghuman <sghuman@google.com> Merge "Always use SSID average for SpeedLabel." into oc-mr1-dev am: 6c198f9e57
am: 94cb0ea479

Change-Id: I2c61f237e4d9a2717d3c630cd0ea24934e13fc6b
a78256947d190a84169a31340c086cfacfcf0697 24-Aug-2017 Sundeep Ghuman <sghuman@google.com> Always use SSID average for SpeedLabel.

When showing the SpeedLabel for the connected network, continue to use
the SSID based average rather than switching to the curve for the known
AP. This addresses changes in SpeedLabel from when the user selects a
network vs when it appears in the connected section.

Bug: 63073866
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I06edc1ca4b1b5c8e8615f48c000544ea22a6bbbd
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
fedf4617894ec75d972bbc681b3c64ef8914b980 16-Aug-2017 Sundeep Ghuman <sghuman@google.com> Implement score cache eviction in AccessPoint.

This prevents cached scores from being held indefinitely and used for
SSID fallback logic in WifiTracker (Picker).

Bug: 63073866
Test: runtest --path frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java
Change-Id: Ib351d20db30dfd18b69bb1f8e4d4f26fc6b74ef0
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
a419b9b4db99c5ca6df759ba7ffebe0855fc0891 16-Aug-2017 Sundeep Ghuman <sghuman@google.com> Implement score cache eviction in AccessPoint.

This prevents cached scores from being held indefinitely and used for
SSID fallback logic in WifiTracker (Picker).

Bug: 63073866
Test: runtest --path frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java
Change-Id: Ib351d20db30dfd18b69bb1f8e4d4f26fc6b74ef0
Merged-In: Ib351d20db30dfd18b69bb1f8e4d4f26fc6b74ef0
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
7dfc73f7c9a3cef9c987cef8eed8766cf62a8bdc 16-Aug-2017 Eric Schwarzenbach <easchwar@google.com> Remove mSeen from AccessPoint.

Clean up unused variable and associated methods.

Bug: 64533622
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: Ic7e2e0e606647aed95a6fb483f7c818c81e3bf3f
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
6390fa836e4c345240e37e360f2b52f3d6c9a77a 02-Aug-2017 Sundeep Ghuman <sghuman@google.com> Generate fallback speed label in AccessPoint.java

Cache all seen matching ScoredNetworks, and use these networks to
generate a fallback curve. This cache is kept in sync with WifiTracker's
WifiNetworkScoreCache, hence it does not permanently create any new
objects other than the map itself.

Bug: 63073866
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I0cdf17f63f0238e0e3a8324190f75d82beaa6672
Merged-In: I0cdf17f63f0238e0e3a8324190f75d82beaa6672
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
be3a74c2de8dfe1f4bab40e793c3d5c5491a707b 02-Aug-2017 Sundeep Ghuman <sghuman@google.com> Generate fallback speed label in AccessPoint.java

Cache all seen matching ScoredNetworks, and use these networks to
generate a fallback curve. This cache is kept in sync with WifiTracker's
WifiNetworkScoreCache, hence it does not permanently create any new
objects other than the map itself.

Bug: 63073866
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I0cdf17f63f0238e0e3a8324190f75d82beaa6672
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
64d02323df8a3effa5099743f3ea4ff1c9737058 09-Aug-2017 Eric Schwarzenbach <easchwar@google.com> Merge "Use NetworkKey factory methods instead of constructor."
733ea26747332f01865929d04c6444f95a4ebbef 08-Aug-2017 Eric Schwarzenbach <easchwar@google.com> Use NetworkKey factory methods instead of constructor.

Bug: 34346278
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I5f7e4e3268a3d7e372d1098f423b389784765807
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
d1e449267a68220e84c45065ed0d6eb8fe393ed0 07-Aug-2017 Sundeep Ghuman <sghuman@google.com> Refactor WifiTracker sStaleScanResults.

In ag/2580164, in order to minimize changes, we used mutable static
state in WifiTracker to control cache eviction. This breaks a certain
flow in SetupWizard. This change reverts sStaleScanResults to an
instance member and then pipes the value into the AccessPoint update
call to control cache eviction instead of relying on error prone use of
mutable static state.

Bug: 63479352
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java
&&
runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java
Manual: See bug

Change-Id: Ia6d79c1904294da69841cbdf6eafbf42fa70f2d0
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
fca9a47ba86163defeb100a75fc856be6c1f3159 03-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "SettingsLib: wifi: add support for tracking carrier Wi-Fi APs" into oc-mr1-dev
5af90f9fc64c872692b19ffc330f580247413b3b 02-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Show correct security type for PasspointConfiguration" into oc-mr1-dev
280581b1053f9a52457a7a9b8873bc6fef1b5472 24-Jul-2017 Peter Qiu <zqiu@google.com> SettingsLib: wifi: add support for tracking carrier Wi-Fi APs

Added carrier network info AccessPoint to indicate if a given
AP is associated with a cellular carrier.

Bug: 30988281
Test: manual
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.
java

Change-Id: I10e44b5e18099c7052a973ea24809e75bb2ba9ea
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
0b8700f842a0d92e73ce096e0513c5acc7876ee5 25-Jul-2017 Eric Schwarzenbach <easchwar@google.com> Add individual ScanResult speeds to verbose logging.

Moves the individual ScanResult summary string generation out of
getVisibilityStatus into its own method `verboseScanResultSummary`,
to reduce duplication and to enable testing the per-ScanResult speed labeling.

Bug: 63866500
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I9583d142a7d50314017154703df4e1ce69fc68aa
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
2bde6e72ece5e4d7c6f001d25129916b255f6112 30-May-2017 Tomoharu Hatano <Tomoharu.Hatano@sonymobile.com> Show correct security type for PasspointConfiguration

Security type for PasspointConfiguration is not shown
correctly on Wi-Fi detail screen because AccessPoint.java
does not return correct security string via getSecurityString().

Bug: 62182395
Test: manual

Change-Id: I76436d7efbf18b6f5478d35f02fac3dfcae2be53
Singed-off-by Tomonori Nanbu <tomonori.nanbu@sonymobile.com>
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
c7886489eea5b2667f470ae0cd3295942fa70896 26-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Only display RSSI/band information if network is connected." into oc-mr1-dev
3b8ce7c6d73c5391ac06ebc473ee47da5896e369 26-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Sort APs by Speed label value instead of ranking score." into oc-mr1-dev
f5b7da9b3262edea5907b60d10505450575f78d0 26-Jul-2017 Sundeep Ghuman <sghuman@google.com> Merge "Do not evict scan results in cold start." into oc-dr1-dev
am: d68b6dc56b

Change-Id: If442689c6a05ad261a846a5252d9a0256520508e
d68b6dc56b2e0c3124ec53a791cf14a612fcc4a8 26-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Do not evict scan results in cold start." into oc-dr1-dev
4205874ec745d8b254f283bbee12e2f41a57f8e6 22-Jul-2017 Sundeep Ghuman <sghuman@google.com> Do not evict scan results in cold start.

When starting WifiTracker, show whatever results are available from
platform until new scan results come in. This allows us to show the best
available results from the previous location scan. Once we have resumed
scanning and new scan results come in, the previous logic of evicting
scan results older than 15 seconds applies.

Also prevent unnecessary onConnectedChanged callbacks from being fired,
which may unnecessarily cause UI reloading bars to appear by performing
unnecessary work.

Bug: b/38212080
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java &&
runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java

Change-Id: I3db9d98425b3d2fc66fa0757807a318d0c7456ee
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
640f04ef38d39c03b5374a1616ce96f333df0851 21-Jul-2017 Glen Kuhne <kuh@google.com> Merge "Don't set AccessPoint with WifiInfo.INVALID_RSSI" into oc-dr1-dev
am: 860f185c66

Change-Id: I9069d51fa6214d9b78c04eea6ab6adebff13ca2e
f4f3842b02262a2483b958aa4b1e9b9e8fc4fb7b 18-Jul-2017 Eric Schwarzenbach <easchwar@google.com> Sort APs by Speed label value instead of ranking score.

This prevents unintuitive sorting if the ranking score (somehow)
sorts differently from the speed label.

This change also fixes a broken test in AccessPointTest.java
'testSummaryString_showsSpeedLabel()'.

Bug: 63116984
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I4a9e55950541ddbf32e01508484bd40326ef228e
(cherry picked from commit 0b431c9af2324f412edfb329047c5ae9f1ebccd8)
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
b77d3d74752fca440349269ee661c02ee07af5db 19-Jul-2017 Eric Schwarzenbach <easchwar@google.com> Only display RSSI/band information if network is connected.

Change the verbose AccessPoint summary to only display visibility summary
if it is the currently connected network.

Note: This does not fix the underlying behavioral issue where
WifiTracker does not correctly null out the AccessPoint's mWifiInfo.

Bug: 62317380
Test: manual

Change-Id: Idcdd182200d2d2ded6b3200b67c4ed654d45a9b7
(cherry picked from commit 3c4f4ffc5c26981020942397fe54c53f551ea7ca)
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
d38708c1ab1bad1dd2e811204e21a76e33a69182 19-Jul-2017 Glen Kuhne <kuh@google.com> Don't set AccessPoint with WifiInfo.INVALID_RSSI

This stops the RSSI of an AccessPoint object being updated from WifiInfo
for the current network, when that WifiInfo does not have a valid RSSI.
This occurs when attempting to connect to a network, and the connection
has not yet been established.
Fixes a UI bug where the signal strength would appear to be zero when
attempting to connect to something, or after failing to.

Bug: 63487286
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java
Test: Manual. Attempt to connect to network with bad PSK. Observe Signal
strength does not get set to zero.

Change-Id: Ia5343fb6f0935134e6a4f82034de164342fe55d4
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
a28050ae42edb487239d9800b173ea334981f2b5 13-Jul-2017 Sundeep Ghuman <sghuman@google.com> Use scores from connected AP only.

When connected to a specific base station, show the speed label for that
specific access point, rather than the best label for all similar access
points in the area.

Bug: b/63073866
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: Ic3b3c5838ca8b43daa226335125bb8046dee3884
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
a54c89ec56dfb9395179dfdee82d8923469d0b93 19-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Standardize usages of "/" separator in SettingsLib"
446afac1590733f9545118fed5ae8e769368b8b2 23-Jun-2017 Glen Kuhne <kuh@google.com> Add FailureReason to WifiConfiguration

Added a new field that caches extra details about connection failures so
that they may be surfaced in the UI.

Bug: 62915994
Test: Manual...
Change-Id: I6e7860df4ea755e72fbdd4b6bf514338f2f1de80
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
68cf9f538bc302c6c1038697a70476f282b09039 15-Jul-2017 Maurice Lam <yukl@google.com> Merge "Load internal resources using name rather than ID" into oc-dr1-dev am: 43e249ff27
am: f4d873fd56

Change-Id: If4b688989d8f7c0da73e32a98a9ebba619c53397
d3171ca2a15a6be6412d626fffbb7a536a7cb5c0 13-Jul-2017 Sundeep Ghuman <sghuman@google.com> Standardize usages of "/" separator in SettingsLib

This separator should be translated the same as the
preference_summary_default_combination used in the Settings app. We
reintroduce this string here in order to avoid a dependency from
SettingsLib to Settings app.

Bug: b/62354743
Test: NA - Refactor
Change-Id: I2ce12848b944417b0df5e6f629aabd49712ff634
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
845dae5cdb167dde981eeefb8508cb383046ed7f 14-Jul-2017 Jeff Sharkey <jsharkey@google.com> Merge "Move "metered" persistence to WifiConfiguration."
43d2a1700b6eb1d804924c6a1e5e0161a13a5348 12-Jul-2017 Jeff Sharkey <jsharkey@android.com> Move "metered" persistence to WifiConfiguration.

For a long time we've had a nasty tangled dependency between Wi-Fi
and NPMS, since they both persisted different details for configured
networks. As part of preparing for new carrier data plan APIs, move
the tracking of meteredness over to WifiConfiguration.

This also cleans up how meteredness is communicated through
NetworkAgents to rely completely on NET_CAPABILITY_NOT_METERED by
removing the metered flag on NetworkInfo, which has caused confusion
and staleness.

Migrates any existing user-configured metered networks over to
WifiConfiguration once the device finishes booting.

Remove support for NetworkQuotaInfo, since this information can no
longer be made available to apps. Frustratingly, some apps are
using it, so keep the object around returning stub values, and shame
them in the logs.

Bug: 63391323
Test: builds, boots, Wi-Fi policy is upgraded
Exempt-From-Owner-Approval: Bug 63673347
Change-Id: I64f865ddeb65cfcd330f8d2a847368abdf960a07
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
7f6fc86b9ce6c2c505830b4462bb47bcdf44b566 13-Jul-2017 Maurice Lam <yukl@google.com> Load internal resources using name rather than ID

Since setup wizard is distributed by binary, and internal framework
resource IDs may shift due to OEM customizations, load the resource
via its name instead.
Long term SUW should move away from depeneding on framework internal
resources or be open sourced.

Test: Existing tests pass
Bug: 63546650
Change-Id: I3555945d1f310ee79bdfc3542411d46a4fd4bf7d
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
39ad5d8d70e7d3e39c1ae47b7bca12b4d32589d0 12-Jul-2017 Sundeep Ghuman <sghuman@google.com> Fix debug logging in WifiTracker.

Add support for 'sVerboseLogging' which is set for developer options, as
well as dynamically checking Debug log level.

Bug: b/63364648
Test: NA - logging only change
Change-Id: I73d1dc384c81114b039e21b076add3a563f38bfc
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
d911da3adcdc009c6fcbd956f7059838bf55fe69 06-Jul-2017 Sundeep Ghuman <sghuman@google.com> Fix NPE on network forget from details page.

Forgetting a network from the wifi network details page throws an NPE in
WifiSettings when the details fragment exits, crashing the app.

Bug: b/63351286
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I749ecbda5654ff7a86ffe4c38ca74ebe338923f0
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
c93f7b215b474c4ce39604b9595d0ec3628ea482 29-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Update WifiConfiguration in AccessPoint." into oc-dr1-dev
f1febb57d8e39567ad6bcf99ef82b9659392b35f 29-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Change TRON counters to reflect cl/159755374" into oc-dr1-dev
f4d3302b06bf910fe122cdb2ef39900c7a36b038 06-Jun-2017 Sundeep Ghuman <sghuman@google.com> Update WifiConfiguration in AccessPoint.

Currently, calling AccessPoint.update(config, info, networkInfo) will
not store the new WifiConfiguration object if it has changed. This can
cause the summary statement to fall out of sync.

Bug: b/38409294
Test: Open WifiNetworkDetails page with verbose logging. Stale state no
longer shown when config changes.
runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I86411527472621f86ab691ee772c0b3d2153d01f
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
6a62328517920d2c0aa431e350fce6ba2c105bc2 29-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add case sensitive sort to AccessPoint compareTo." into oc-dr1-dev
53200edba1bee7fe6dc3f567fb92876780881ac2 22-Jun-2017 Sundeep Ghuman <sghuman@google.com> Change TRON counters to reflect cl/159755374

This updates to the newly defined TRON counters and futures proofs us
for new values. Prior to this change, introducing a new enum would throw
an IllegalArgumentException.

Bug: b/35628911
Test: NA
Change-Id: I46662d53b31858396c9a5a6113b1166fba4dfc51
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
d44b8e4689f9ab1a36f9ba0c6e7756532b17596c 22-Jun-2017 Sundeep Ghuman <sghuman@google.com> Add case sensitive sort to AccessPoint compareTo.

If APs differ only in case, further compare by case.

Bug: b/36719423
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: Ic36a2221a668fa59230bb0ddbee2055776d2dc44
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
9c4c6ad6accb6170c37d050b86d22241fb36a790 20-Jun-2017 Peter Qiu <zqiu@google.com> SettingsLib: set network status for wrong password error

Bug: 62444625
Test: Manually connect to a WPA network with a wrong password,
verify "Check password and try again" is shown under the network name

Change-Id: Ic226f4bb9b97969ef7e369de4f7a6976a229ba77
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
a2f661612dbc898b93a85b5ecb5a116c358ed8fa 17-Jun-2017 Sundeep Ghuman <sghuman@google.com> Merge "APs from old scans should not have RSSI values set." into oc-dev
am: 65c00b2f4e

Change-Id: I543f873621ffa26818d6b237d8ed3d1c7769ad98
2412817201a39340f8f91b873fb0d1dddf3feb88 16-Jun-2017 Sundeep Ghuman <sghuman@google.com> APs from old scans should not have RSSI values set.

This change creates parity between 'initWithScanResult' and
'update(ScanResult)' so that RSSIs are set similarly. This avoids an
edge case problem when starting WifiSettings and only having very old
scan results available (eg, coming from a screen off state), in which
the old APs would have been shown and then instantly removed due to a
sequential WifiTracker call to update the APs based on sticky
broadcasts.

Otherwise worded, creating an AP with a scan result and then instantly
updating it with that same scan result would drastically change the
state of the AccessPoint object.

Bug: b/38212080
Test: With old scan results in the scanner (screen off more than 15
seconds), start wifi settings. Old APs should not be shown and then
instantly removed.

Change-Id: Ida13713dc115ba04882a7651eab4ebfd5cccbe7c
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
8a43704a26af3e82879fcf51ce2d263861010fa5 06-Jun-2017 Sundeep Ghuman <sghuman@google.com> Don't show unset score values for AccessPoints.

Merged-In: I0fd96da6a06dafd8c8ebb435a2725ab155bd26ed

Bug: b/3692675
Test: Visual confirmation
Change-Id: I52909bf55e6efabd2be6c17542f2a15135d25c62
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
55adc6b2fc524a79805e422bf0c772c2dd202838 06-Jun-2017 Sundeep Ghuman <sghuman@google.com> Add SLOW network and remove deprecated enums.

Stop using deprecated API enums and instead define internal constants
for different network speeds. Add support for 'SLOW' networks.

Bug: b/35628911
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I3394f801118adffcb4ba49035e0b22eebb9f0e9a
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
271e5de583e78fea09c12984df77c927be0ad671 30-May-2017 Sundeep Ghuman <sghuman@google.com> Enable speed labeling based on existing network badges.

Bug: b/35628911
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I0fd96da6a06dafd8c8ebb435a2725ab155bd26ed
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
b5bcb8d4d60a4cc667b11448577b0c82e518008a 20-May-2017 Stephen Chen <stewchen@google.com> Check network info for metering state on AccessPoint.

This resolves bug where networks manually marked as metered by Settings
UI were not tagged with a metered friction icon in the Wi-Fi picker.

Bug: 38460378
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I2ffe25e898ac001549e7d7492a2aa335ee415a4e
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
5c5cd7aa2b0c538db890177b8fca31a197b5d400 03-May-2017 Sundeep Ghuman <sghuman@google.com> Fix an NPE that can result from a race condition.

NetworkInfo and WifiInfo are set via broadcast receiver so while in a
true stable state network info should not be null if wifi info is, this
can occur in rare instances due to a race condition. It is convention in
AccessPoint.java to always null check network info.

Bug: b/37951301
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java

Change-Id: Ia1b357c84b961a555ec24a5b930ade35ddf8dbba
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
96a53579088a21590cb02e5befc88ef965520d3e 21-Apr-2017 Sundeep Ghuman <sghuman@google.com> Updating network info state should return true.

Update AccessPoint.java so that network state changes return updated
equals true, so that corresponding UI elements will updated
appropriately.

Bug: b/37289220
Test: runtest --path
packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I1bc74997227b46468ef11efbf183a95ec0d2b15f
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
8920e9c36d74f1f1a60dd0e92be0d8fdceeea7ea 28-Apr-2017 Sundeep Ghuman <sghuman@google.com> Don't show unset values in AccessPoint toString.

Bug: b/36926765
Test: Visual inspection with Enable Wi-Fi Verbose Logging enabled
Change-Id: I381e96d48edf489aef32e04ca066e884285173e8
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
8c792880937fbdeba884bfffe86412b5ed537930 05-Apr-2017 Sundeep Ghuman <sghuman@google.com> Listen to RSSI_CHANGED_ACTION broadcasts in WifiTracker.

This solves issues where the phone status bar and connected AP in the
picker are out of date.

Bug: 35971425
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/and
roid/settingslib/wifi/WifiTrackerTest.java

Change-Id: I2a7c50de6c754623fd262aac4e9e21d6bd7fc5cf
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
21f6868d8096ca2ff64cdb9fdc4457277d70bf07 04-Apr-2017 Stephen Chen <stewchen@google.com> Set AccessPoint metered bit using ScoredNetwork, WifiInfo, and WifiConfiguration.

Bug: 36888471
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: I5228512a832665916520658acddc9bf93d78a1a1
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
ced37dba7b2ce04ea65a47273d5892ace90ac33c 14-Mar-2017 Peter Qiu <zqiu@google.com> SettingsLib: wifi: encapsulate Passpoint configuration in AccessPoint

The configurations that are managed by "Saved Networks" page are
centered around the abstraction of AccessPoint. Since we will
need to manage Passpoint configuration in the "Saved Networks"
(for configuration removal), encapsulate necessary information
in an AccessPoint for a Passpoint configuration.

Bug: 34207710
Test: manual test
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java
Change-Id: Ide556f5ec6c4ef9e1f82016efe17dc9860f298de
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
36dd5cf15262766047339031cc2d2ac4c5fb1a20 20-Mar-2017 Stephen Chen <stewchen@google.com> Change string for connected via WFA.

Bug: 34773168
Test: runtest
Change-Id: I292013c874012cca004be1078f854cb3ee145112
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
ce78a5f2d33716fde95f12b1e02df953d013e986 16-Mar-2017 Sundeep Ghuman <sghuman@google.com> Average scan results for AccessPoints.

This reduces jitter in the WifiTracker and is modeled after a prior
broken implementation which attempted to half-life the rssi each time
AccessPoint.update(ScanResult) is called.

Bug: 34774783
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: Iab3f9914af40f2fd56e8ae7b45dcbd62176c8a67
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
aaa8a1b54a038424bd3e6590efe52c4fac14143b 13-Mar-2017 Sundeep Ghuman <sghuman@google.com> Fix the number of levels returned by getLevels().

This was previously out of sync with WifiManager.RSSI_LEVELS which
caused UI issues where the wrong number of bars were shown in various
places. This is the permanent fix to a previous temporary fix.

Bug: 1948619
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: Iadb2a6131ee9fbc4f297766d0bc3bc82eca40a4d
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
54bdcfa08180a69b852c8f71b39d30f0061ce6ff 09-Mar-2017 Sundeep Ghuman <sghuman@google.com> Consolidate getRssi logic to return mRssi.

Changed previous getRssi method to updateeRssi in order to clarify
process, and also changed logic to return current mRssi when the given
AP is active. mRssi is set directly from WifiInfo for active networks.
For non-active networks we return the highest Rssi for any recently seen
BSSID (multiple APs with the same SSID are grouped together).

Change getSeen to updateSeen for consistency, although seen is never
used anywhere.

Also fixes b/34889252.

Bug: b/36077865
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java

Change-Id: Ic52df41b8eb317e83d835c745b404007a53cf5d7
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
dc6cf4b683c6b8af678dc7f50c069879013f9fa5 09-Mar-2017 Sundeep Ghuman <sghuman@google.com> Necessary AccessPoint visibility change for WifiNetworkDetailsFragment.

Refactor constant name in WifiTracker for readability.

Bug: 34713316
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/AccessPointTest.java
runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java

Change-Id: I41b0d69303d0452e2c2c22bcbddc34ae3932e99e
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
6ff8367dc2841670bcade44dd08d5fdda837463e 27-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AccessPoint - Add Builder; Add unit tests for compareTo()"
9853743705603e0b5214e5995bea8c9267708813 08-Feb-2017 Dave Schaefer <daveschaefer@google.com> AccessPoint - Add Builder; Add unit tests for compareTo()

Add a Builder class to make testing easy and clean.
Add unit tests to enforce the sorting order that we want.
Refactor some compareTo() internals to use existing methods rather than
duplicating functionality.
Refactor isReachable() functionality to a new method.
Update tests to use Truth assertion library.

Test: Run local AccessPoint unit tests:

adb shell am instrument -w -e class
com.android.settingslib.wifi.AccessPointTest
com.android.settingslib/android.support.test.runner.AndroidJUnitRunner

Bug: 35042429
Change-Id: I7c8a1ca69800f62e1fb13141e58b4e52b2bc3d70
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
2b48990b9c111b99b2a786f84e38de306dad48b3 23-Feb-2017 Sundeep Ghuman <sghuman@google.com> Process the NetworkInfo before updating AccessPoints.

This fixes a UI issue where the Tracker first displays the connected
accessPoint as inactive before processing the connected state, which
causes the list to jump around.

Also add useful debugging information to AccessPoint toString.

Bug: 35681450
Test: runtest --path
frameworks/base/packages/SettingsLib/tests/integ/src/com/android/settingslib/wifi/WifiTrackerTest.java
Change-Id: I9a8356cfdd2e5be2da58ce5de82e228fddf301f9
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
f8a420097e54a369d3bd1aa152ea0eea58ff5c94 21-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "SettingsLib: wifi: Fixed AccessPoint tracking for Passpoint networks"
6e820805137b139a8514577e5435d58f8f10051c 18-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Move Badging from ScoredNetwork to NetworkingBadging."
3a22f91638750ecb220e20912e9fe986c0405926 17-Feb-2017 Yuxin Chang <yuxin.x.chang@sonymobile.com> Merge "Show connection error reason for Passpoint AP" am: 855889b086 am: 4896a04013
am: 012a9c1f6e

Change-Id: Icde372b38103016deec0670e66ba8bb821a21a4f
4896a04013a97a41564b0a68685cc559bc81fcca 17-Feb-2017 Yuxin Chang <yuxin.x.chang@sonymobile.com> Merge "Show connection error reason for Passpoint AP"
am: 855889b086

Change-Id: I164f575dfc5dd69912f433e46b1d70b1fd11b1e6
98773d4837922715c740d06bfd02666dceaf350b 03-Feb-2017 Amin Shaikh <ashaikh@google.com> Add a disabled reason for recommendation providers

Display a message indicating that a saved networks has not been
automatically connecting due to low quality if
WifiConfiguration#mNotRecommended is set.

Bug: 34745259
Test: m RunSettingsLibRoboTests && runtest frameworks-wifi
Change-Id: I275e2711da68715fb6d92bf954e9f58a3386b1f4
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
699deaf6103d182dbd291ca2b420f30b439753d4 14-Feb-2017 Sundeep Ghuman <sghuman@google.com> Move Badging from ScoredNetwork to NetworkingBadging.

This is a non-functional refactor. The old enums will be removed once
ag/35323372 is addressed.

Bug: 35114358
Test: Ran existing tests (see files touched).
Change-Id: I08fd8c7964463b5908ce361e61f8fe811d0ff6f3
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
6b750865ed2f16ccb0cf9274dd3aad0889e180d8 11-Jan-2017 Yuxin Chang <yuxin.x.chang@sonymobile.com> Show connection error reason for Passpoint AP

Currently "Available via <provider friendly name>" is always shown
in the summary with Passpoint AP, even connection error happens,
so user might not notice the error happens.

Better to show error reason when connection error happens,
so that user can notice the error and take actions to solve it.

Bug: 35190091

Change-Id: If0d06e800df8de3119590372feda946457aab5e6
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
2c3b5ee2be5da70a6ac19e7348da3d94cf2eddae 01-Feb-2017 Peter Qiu <zqiu@google.com> SettingsLib: wifi: Fixed AccessPoint tracking for Passpoint networks

Previously, we were using provider name as the "SSID" for
Passpoint networks, and use it to compare against real SSIDs,
which obvious doesn't match. So fix it.

Also removed the Passpoint specific logics in WifiTracker for
tracking Passpoint networks, since there shouldn't any
difference in tracking Passpoint APs and normal APs.

Additional work is still needed for managing installed
Passpoint configurations in the "Saved networks" page,
and it is being tracked by b/34207710. The Passpoint configuration
is not an "Access Point" per se, it is a network profile.

Bug: 34455883
Test: Install a Globla Reach Passpoint profile on a bullhead,
verify device auto connects to a Global Reach AP and UI
(QS, QS+, and Settings) correctly reflects it.

Change-Id: I63e66f683f8cb96e664516b130f5e7bc02358a10
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
05c41e2ce402ee7c49f4e5d19fd1569523307459 01-Feb-2017 Sundeep Ghuman <sghuman@google.com> Show saved networks before scored networks.

Changing ranking order to prioritize saved networks over scored
networks.

Bug: 34716123
Test: Turn on scoring and scoring UI features, ensure unscored saved
network appears before unsaved scored network. Working on adding tests
for AccessPoint.java separately.

Change-Id: Ib53ade6c0e3756e2595ba6a73bf1a0fdc05e3074
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
5519b7b8738bc68bf5af666fb3c453e518b8de66 15-Dec-2016 Sundeep Ghuman <sghuman@google.com> Add rankingScores and badges to WifiPicker.

Adds support to request scores in WifiTracker and then plumb
those scores via AccessPoint.java. AccessPoints will sort on
ranking scores. Show badging in WifiSettings picker.

Bug: 33457699, 33778046
Test: Unit tests
Change-Id: Icc3161cf147b3a9715d6e9f56af574e52ae6c832
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
3bd405bd72cd2b7b28bdf4402e36cf747b3cf454 16-Dec-2016 Shinji Sogo <shinji.sogo@sonymobile.com> Merge "[HS2.0] Need to compare with not only FQDN but SSID" am: 69e7f9683d am: e67395a97a am: 80fba49386
am: ee05b648c7

Change-Id: I29e7c9ce4c437ac3e012516a2bfd4c3cf8981aae
ee05b648c7b0a828e19a0beef6e044bbc23351dd 16-Dec-2016 Shinji Sogo <shinji.sogo@sonymobile.com> Merge "[HS2.0] Need to compare with not only FQDN but SSID" am: 69e7f9683d am: e67395a97a
am: 80fba49386

Change-Id: I15cabf9e4146f1f0d0c31b24d222c34b8477cdb7
80fba493863fb1d11e75e6c78f7128852b7ecee9 16-Dec-2016 Shinji Sogo <shinji.sogo@sonymobile.com> Merge "[HS2.0] Need to compare with not only FQDN but SSID" am: 69e7f9683d
am: e67395a97a

Change-Id: Idff19dcb2c95c4f8b359863fe8545fc478040723
69e7f9683d2c76c0be891e05727a649f2c03a866 15-Dec-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "[HS2.0] Need to compare with not only FQDN but SSID"
68457bfc1ef60ee69b66e64748713ddf4e6bbf7d 14-Dec-2016 Lorenzo Colitti <lorenzo@google.com> Display "Sign into network" in settings when on a captive portal. am: 1317e049f5
am: 38938279a4

Change-Id: I3f836ff459850e48def89be69b6c7cda4986907b
38938279a4290e7d724369cea4220bc0073d62fb 14-Dec-2016 Lorenzo Colitti <lorenzo@google.com> Display "Sign into network" in settings when on a captive portal.
am: 1317e049f5

Change-Id: I9d15780cb49e365da98e09ba0149a8d31df4373c
1317e049f5657177f3ed1af8a7dbe815c47e1a81 13-Dec-2016 Lorenzo Colitti <lorenzo@google.com> Display "Sign into network" in settings when on a captive portal.

Test: Manually observed UI when connected to captive portal.
Bug: 33532675
Change-Id: I3906cd7c13f7bb14242d8a4ec1ca37febccee8c6
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
f29e12217800c32a7e71975b4f25e77a84890bea 09-Dec-2015 Shinji Sogo <shinji.sogo@sonymobile.com> [HS2.0] Need to compare with not only FQDN but SSID

When there are APs with different SSID but the same
Passpoint configuration, connection status is shown for
the multiple APs though actually a device can be connected
to only one AP.

Bug:32136285

Change-Id: Iec5e5d1deb45aad68827500c23213ec7a8342229
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
81d0f330170571b12af1acf23e1ab716075d563f 18-Oct-2016 Fan Zhang <zhfan@google.com> Catch NPE on network state and fall back to empty summary. am: 6acb76621d am: d856752ee7
am: 383fd2e9b6

Change-Id: Id4d56142abdcb8a99677db016beaf5708d40ba45
383fd2e9b6928ba25fd2a9ad7d208e448fe14718 18-Oct-2016 Fan Zhang <zhfan@google.com> Catch NPE on network state and fall back to empty summary. am: 6acb76621d
am: d856752ee7

Change-Id: Id1f17b2d60627110c1c7a3ae9aac3a7496f534f1
6acb76621dab874ba21a997e7e375dfe284a843f 17-Oct-2016 Fan Zhang <zhfan@google.com> Catch NPE on network state and fall back to empty summary.

Bug: 32171456
Change-Id: Ia3c1e1f5b7848ec914be9f92401a02b50df1dc57
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
1c9f32740c54388a914d180714625cfac70731cc 14-Oct-2016 Shinji Sogo <shinji.sogo@sonymobile.com> Merge "Don't compare FQDN with providerFriendlyName" am: aae64557e1 am: 9c84160545 am: b8bab1df10
am: dafb19bb59

Change-Id: Id05db87f864df47245a748531cbdad4b27f6da1c
dafb19bb599a5e8da3e2fe6aa8002791d7279aa0 14-Oct-2016 Shinji Sogo <shinji.sogo@sonymobile.com> Merge "Don't compare FQDN with providerFriendlyName" am: aae64557e1 am: 9c84160545
am: b8bab1df10

Change-Id: Ic019a0f04737d128cc5005be8fe9733f30ee44a3
b8bab1df105bf8752955ca609789129433c605bf 13-Oct-2016 Shinji Sogo <shinji.sogo@sonymobile.com> Merge "Don't compare FQDN with providerFriendlyName" am: aae64557e1
am: 9c84160545

Change-Id: I9091af58eb06d5bf89847ac35aba9849e5e758cf
20445f7bd039098f476616f43c95f4dd37b8f6ce 02-Nov-2015 Shinji Sogo <shinji.sogo@sonymobile.com> Don't compare FQDN with providerFriendlyName

FQDN and providor friendly name are obviously different, and if they're
compared they're almost always unmatched. FQDN of current configuration
should be checked with FQDN of new configuration.

Bug:31815374
Test: Test with the device

Change-Id: I6c8c8ca07b4abb038175e3999d387f0869ec7391
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
dbb9f9fa6442a48ee5f2d9e7f74c551f53ad626a 26-Sep-2016 Salvador Martinez <dehboxturtle@google.com> Updated summary logic for wifi am: 5d937fc95f am: 06db363355
am: 6d0f85a24f

Change-Id: I66e021526a9a07e4f60b7ca7a63756b3a5d7f7d1
6d0f85a24fe3348c3b01950ce688797870641176 23-Sep-2016 Salvador Martinez <dehboxturtle@google.com> Updated summary logic for wifi am: 5d937fc95f
am: 06db363355

Change-Id: Ic525877f761466def1565234aab030ee950c80ac
5d937fc95f2f40c6f920d73fb56f6aef03804441 23-Sep-2016 Salvador Martinez <dehboxturtle@google.com> Updated summary logic for wifi

Wifi summary claimed it would not
reconnect under conditions where it should.
This has been changed to properly say when an
AP will automatically be reconnected to.

Test: make RunSettingsLibRoboTests
Bug: 29973023
Change-Id: I2ffb4ec3b83e93c3df9ee179fc6a6bf59acec42e
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
d7b689aefcf7548ea0367622c76b4bda9f9833b2 01-Sep-2016 Ajay Nadathur <ajayns@google.com> [SetupWizard] Fix wifi multithreading issues

- Jank on setupwizard's wifi screens caused by concurrent modification
of AccessPoint on Worker thread while the wifi list is being updated
in the Main/UI thread.
- Fix this problem by maintaining two separate lists, one that is
modified in the worker thread and not published to outside components,
while another list that gets published on the main thread. The
AccessPoint changes are computed on the worker thread and once thats
done, the changes are then copied over to the published APs on the
main thread.

Test: Connected to multiple APs through both suw & settings. Did not
notice the jank. Also added unit tests

bug:30704173
Change-Id: I78666608d39d3680b91980c1a7907d239dc82799
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
a015262ca1c577d52e52a2206d43b2d0149f28ef 21-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Use a different TtsSpan type to read wifi name properly."
eb83a0d5019570b76cc248d419ddb14afc74eb85 21-Sep-2016 Fan Zhang <zhfan@google.com> Use a different TtsSpan type to read wifi name properly.

Fix: 31272186
Test: SettingsLibTests
Change-Id: I94b2e4c995d865cc0cf88fecd0ee954ae962100a
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
3005c2f52a9200694a973d9ccfd53d909a89c156 21-Sep-2016 Fan Zhang <zhfan@google.com> Fix NPE for WifiConfiguration in AccessPoint.
am: 51365c3b4c

Change-Id: I2b06936d69ae65910105dce9327df3920ebbcd60
51365c3b4c1dc6575882bfe6285bdf3598cac5d2 20-Sep-2016 Fan Zhang <zhfan@google.com> Fix NPE for WifiConfiguration in AccessPoint.

In getSummary methods, make a local reference to WifiConfig before
accessing the fields to prevent member variable mConfig being reset in a
different thread.

Bug: 31617798
Test: manually open/close/refresh wifi settings and see no crash.

Change-Id: I254cb3cb59dead425a9ada17d9e84a7e2974f738
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
18af49395c18ce58f76cb137ec6981bd615d5719 10-Aug-2016 Mitchell Wills <mwills@google.com> Ensure BSSIDs are correctly aged out in settings view

When verbose logging is on, recent BSSIDs are displayed under the
network. This ensures that the BSSIDs are aged out after a period of
time instead of based on a fixed size LRU cache. This prevents BSSIDs
that are no longer present from appearing in the results.

FIXED=30711015
TEST=setup two APs, observe both BSSIDs in settings, turn off one,
observe it disappearing after a short period of time.

Change-Id: Id2b2ccd0899eae8d4e2e1c2b3ae9409136a8c948
(cherry picked from commit b744d6e865e4141cd19cdf279f75f30c3d6590af)
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
b744d6e865e4141cd19cdf279f75f30c3d6590af 10-Aug-2016 Mitchell Wills <mwills@google.com> Ensure BSSIDs are correctly aged out in settings view

When verbose logging is on, recent BSSIDs are displayed under the
network. This ensures that the BSSIDs are aged out after a period of
time instead of based on a fixed size LRU cache. This prevents BSSIDs
that are no longer present from appearing in the results.

FIXED=30711015
TEST=setup two APs, observe both BSSIDs in settings, turn off one,
observe it disappearing after a short period of time.

Change-Id: Id2b2ccd0899eae8d4e2e1c2b3ae9409136a8c948
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
60a82ffe457942bf9a106b406b14d10d09ba57ef 25-Feb-2016 Jason Monk <jmonk@google.com> Expose bssids for AccessPoints

Bug: 26271353
Change-Id: Id83cb8ae8f25247e2d8eec9c4e06604b7dbb5488
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
a0e03ddd5f8b0f3dc0d3cd1c3432b137dd528a90 28-Jan-2016 Tony Mantler <nicoya@google.com> Change AccessPoint sorting to bucket signal levels

Keeps the list from jumping around for non-user-visible reasons

Change-Id: I2a47fa2f8e3dfcd95c17c5ffbb552332273eb425
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
f9bf6da6cd0666897f4b56cf0e6dee3c55243273 14-Jan-2016 Bartosz Fabianowski <bartfab@google.com> Add WifiConfiguration.shared flag
am: 6fb0756d2f

* commit '6fb0756d2f59d70507919350f6192718b5d3f630':
Add WifiConfiguration.shared flag
6fb0756d2f59d70507919350f6192718b5d3f630 12-Jan-2016 Bartosz Fabianowski <bartfab@google.com> Add WifiConfiguration.shared flag

* Add boolean WifiConfiguration.shared, which indicates whether a network
is shared (visible to and usable by all users) or private (visible to
and usable only by the user who created it)
* Extend WifiConfiguration.configKey(...) so that when two users create
private configurations for the same network, their configurationKeys
will be different.
* Make AccessPoint.matches(...) take into account the shared flag

BUG=25600871

Change-Id: I4a4335fa3b4b4f850e16748583a29ab66992ddc8
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
f7705c3ed6ac2e6d787f91c65feb003a8b749ceb 01-Dec-2015 xinhe <xinhe@google.com> Initial codes for Quality network selection

In this change list, the old WifiAutojoin module is
refactored initially. The old WifiAutojoinController is
replaced with a new WifiQualifiedNetworkSelector.
WifiConfiguration, WifiConfigureStore and
WifiStateMachine have been modified accordingly. The new
network selection logic is refactored with a more clear
and deterministci one. To refer to thedescribed in
details, in "Quality Network Selection and Connectivity
Scan Management in N". The link of the document is:
https://docs.google.com/document/d
/1JPTa2NEk-PgjCJ16fIrR6ohV-kDKveDlYDOeiMCB2_c

cherry-picked from 8d106780b6a638552749e54e169fc72537d4bccc
and make changes on WiFiConfigurationSerializer.java since
it is not on mm-wireless-dev
Bug:26012244
Change-Id: I44e454544b630b891c9a58a18b5a028edcce580f
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
8d106780b6a638552749e54e169fc72537d4bccc 01-Dec-2015 xinhe <xinhe@google.com> Initial codes for Quality network selection [DO NOT MERGE]

In this change list, the old WifiAutojoin module is
refactored initially. The old WifiAutojoinController is
replaced with a new WifiQualifiedNetworkSelector.
WifiConfiguration, WifiConfigureStore and
WifiStateMachine have been modified accordingly. The new
network selection logic is refactored with a more clear
and deterministci one. To refer to thedescribed in
details, in "Quality Network Selection and Connectivity
Scan Management in N". The link of the document is:
https://docs.google.com/document/d
/1JPTa2NEk-PgjCJ16fIrR6ohV-kDKveDlYDOeiMCB2_c

Bug:26012244

Change-Id: I3df124c110e458e3b6bc29466b9046748d79582a
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
0775a98e2095224d4b1618a4739543ce6e7f32ec 19-Aug-2015 Sanket Padawe <sanketpadawe@google.com> Fix AP showing up forever in Settings after shutting down that AP.

Bug: 22129483
Change-Id: I1f6abdb0b80c2d2fec5a7dc4026b5230cd29af7b
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
5a42db2e9c4ce5700a321b9c2aa22189598ceeaf 03-Aug-2015 Mitchell Wills <mwills@google.com> Pass connection configuration when setting wifi info

This allows the both the ssid and connection info to be verified when
updating wifi info.

Bug: 22797622
Change-Id: I82d771a299e17469683516c6b1077cb260981812
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
0bd08fc22ae457791d95a4d557051e6601516bd0 13-Jul-2015 Vinit Deshpande <vinitd@google.com> Merge "Fix multiple SSIDs for same Passpoint issues" into mnc-dev
194cce695b51604f6245a73cfec27631c7555429 10-Jul-2015 Sanket Padawe <sanketpadawe@google.com> Changes security for Passpoint to EAP security from "Passpoint".

Bug: 22402754
Change-Id: I3afbb6f3f446657a3e9505122032f4edc6401302
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
5b7352cf1bdcede7d018f9bb94667593b11b77c0 10-Jul-2015 Vinit Deshpande <vinitd@google.com> Fix multiple SSIDs for same Passpoint issues

This change fixes Wifi Settings UI for passpoint. The
connected notification now should show up only for the
SSIDs that match.

Bug: 22200890
Change-Id: If69a9364eca5505fe2d4037217f1777fa4d823f5
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
c7a38ef8405443648688a7950378ac4e4ebb3ae5 25-Jun-2015 Shirish Kalele <kalele@google.com> Mark a connection as a Wifi Assistant connection based on the
ephemeral flag in WifiInfo.
Add this private field to WifiInfo.

Change-Id: Ic815b87a24e8272faa6e9e820b8fa55224af882a
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
fcd4612f70bb22e11bf776c76afc45b03a5b026c 12-Jun-2015 Vinit Deshpande <vinitd@google.com> Fix access point list jumping around in WifiSettings

This happens because the scan times are very aggressive
(to save power); and we don't find all APs on each scan.
So on each scan, some APs are considered lost and some
other are considered found; resulting in reordering the
list.

This change fixes that by requiring 3 scans to confirm
absence of an AP.

Bug: 7263326

Change-Id: I04f61ec5e5aa1589f457645acbf538c7e275a4bf
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
6980d12c5864941e68933705c1f15a102ac348cb 15-Jun-2015 Jason Monk <jmonk@google.com> Make references to ssid use a verbatim TtsSpan

Bug: 20059794
Change-Id: Id92ef11e78547e168f55515dea2fc28519871d6f
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
3e9e5fa66e222efb10125a08dc9e6ae359d9c1cc 28-May-2015 Sanket Padawe <sanketpadawe@google.com> Fix display of "null" string shown in Wifi Settings for AP.

Bug: 21476825
Change-Id: I643dcaa3112ff896e7b0abd998f2ad5e13187706
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
402be0628c3c27273e826344ec7b12d53f861152 14-May-2015 Sanket Padawe <sanketpadawe@google.com> Merge "Hotspot 2.0 UI." into mnc-dev
2b51cc30d523cce3609a498c466364caf3ce504e 13-May-2015 Jason Monk <jmonk@google.com> Fix crash from WPS

Also fix the tests to handle the new threadedness while here.

Bug: 20067687
Change-Id: I116bf14c71886b251c2e8bcaeb2c9b0e5f9ec817
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
d187880109a614f677911c89cdc1cb034341de3d 12-May-2015 Sanket Padawe <sanketpadawe@google.com> Hotspot 2.0 UI.

Bug: 20182930
Change-Id: Ice6df509889fa7eb0494bb04af65890f07b4a2b1
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
60137fdcb3294acb3faf8a31d96cb6aa2dd78b1a 06-May-2015 Sanket Padawe <sanketpadawe@google.com> Merge "Saved network summary string fixes in Wifi Settings" into mnc-dev
56cfbfb0319dfed65b6307b1baf73cb9b92db9b9 06-May-2015 Sanket Padawe <sanketpadawe@google.com> Saved network summary string fixes in Wifi Settings

Bug: 20667217
Change-Id: Ife1b1e7da3270020ef405693252a9e8a1ea5a6ca
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
7094d22022c8e0c6ad71920b101434dded8a276e 02-May-2015 Sanket Padawe <sanketpadawe@google.com> Adding "Connected, no Internet" string in Wifi nw summary.

Bug: 17380953
Change-Id: I9664bcbf33832fe722e7d2b3125939287ee98098
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
dcf00c9d0f6f985aef186cfe5d7b63761e2f8104 16-Apr-2015 Vinit Deshpande <vinitd@google.com> Implement 'Available via Passpoint' feature [DO NOT MERGE]

This also fixes the issues related to explicit connection
to passpoint AP, and fixes occassional mention of
'connected via Wi-Fi Assistent'

Change-Id: I152cebafa6259194f1d09a6972a3508156335cb6
(cherry picked from commit ff783cd6cfc82870a6126fe1ef019d21131423fc)
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
fc40600e30e281712f6c2fc899fc3894b8ad0050 16-Apr-2015 Vinit Deshpande <vinitd@google.com> Fix settings UI for passpoint networks [DO NOT MERGE]

This change includes showing the friendly name in saved
networks list and 'Connected via provider' addition for
passpoint connections.

Change-Id: If330baa96dedb099d5989b3df5b9778bbbcb15e3
(cherry picked from commit 597f49cdda63fef1b583e2053341485e8d4e2371)
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java
d52356aa5e82c7c5db61672bbe8d0f44861f3e59 28-Jan-2015 Jason Monk <jmonk@google.com> Move Settings wifi tracking to SettingsLib

Make SettingsLib capable of tracking which wifi networks are
available/saved and their state.

Also modify Quick Settings to use this code rather than having
its own logic.

Bug: 19180466
Change-Id: Iff9f9aed240d79323dba41496496e8076b9fa6f2
/frameworks/base/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java