Commit Graph

141 Commits

Author SHA1 Message Date
Pasty Chang
fbf5506b86 Migrate summary text in wifi QR scan page to DescriptionMixin
The description in the setup flow would follow the new style to align to the left.

Bug: 188593594
Test: atest & manual
Change-Id: Idfc00f51710d725d5c653396902446f29861cb88
2021-05-24 03:24:26 +00:00
Weng Su
d451d16712 Show security screen for ACTION_PROCESS_WIFI_EASY_CONNECT_URI intent
Bug: 183181987
Test: manual test
make RunSettingsRoboTests
ROBOTEST_FILTER=WifiDppConfiguratorActivityTest

Change-Id: I26e97142cc1c30909bd14eb85d466442274446a9
2021-04-23 20:34:07 +08:00
Bonian Chen
234b698fb2 Revert "[Settings] Support getSystemService(Class<T>)"
This reverts commit d5ccde31a8.

Reason for revert: failure on test cases

Change-Id: I0a179a6ebb5ef1dec566ce6e8facd5f3b82d7c8a
2021-03-30 00:51:15 +00:00
Bonian Chen
d5ccde31a8 [Settings] Support getSystemService(Class<T>)
Add getSystemService(Class<T>) to align the capability with framework
part.

This is a back port from aosp/1639943, aosp/1645152 and aosp/1648047

Bug: 179640862
Test: local
Change-Id: I035db55a71f94000ca35f8d71f03c19208423c73
2021-03-24 00:59:46 +08:00
Abel Tesfaye
cb03fb955f Correct Wifi Share UI margins and capitalization
Test: locally with crosshatch

Bug: 176926579
Change-Id: Ida59174f93ae696e4f2a91c353cf9b1649f1faac
2021-01-15 20:15:45 +00:00
Weng Su
b9c865b704 Add Hotspot WPA3 Settings
- Add WPA3 SAE security types
  - "WPA3-Personal"
  - "WPA2/WPA3-Personal"

- Verify valid WPA3 password

- Enable QR code scanner for Hotspot WPA3

- Avoid null point exception when settings keyword searching

- Screenshot
  https://screenshot.googleplex.com/B6u54wh8w35Xnyf
  https://screenshot.googleplex.com/8hWHHUTb6UaS9vB

Bug: 167968488
Test: manual test
- atest WifiTetherSecurityPreferenceControllerTest
- atest WifiUtilsTest

Change-Id: I2992040498f8add107a4cce70a92c1c6ee6ab805
2021-01-10 08:38:39 +00:00
Steven Liu
c1477650c9 Introduce a WifiTrackerLibProvider.
This make the WifiTrackerLib can be customized.

Bug: 149540986
Test: manual test wifi picker, and atest com.android.settings
Change-Id: I1418ae39c895ce2ff87f18005a226a4835f9e083
2021-01-06 08:44:34 -08:00
bsears
598ab32345 Revert "Add Hotspot WPA3 Settings"
This reverts commit e0062af10c.

Reason for revert: Bug 176569060 - Droidfood blocking crash in Settings app.

Change-Id: Id50c96e8ce704b19e5ffb9b9a9fcbb0db2d81aee
2020-12-31 21:16:51 +00:00
Weng Su
e0062af10c Add Hotspot WPA3 Settings
- Add WPA3 SAE security types
  - "WPA3-Personal"
  - "WPA2/WPA3-Personal"

- Verify valid WPA3 password

- Enable QR code scanner for Hotspot WPA3

- Screenshot
  https://screenshot.googleplex.com/B6u54wh8w35Xnyf
  https://screenshot.googleplex.com/8hWHHUTb6UaS9vB

Bug: 167968488
Test:
- Manual Test
- atest WifiTetherSecurityPreferenceControllerTest
- atest WifiUtilsTest

Change-Id: I155ed0bfd187d27ba864f9fb1b78d08c437740f3
2020-12-29 08:04:10 +00:00
Alex Salo
65c319a7d5 Merge "Implemented nearby button that displays wifi sharing intent and long press button that opens wifi qr share fragment" 2020-11-16 21:45:34 +00:00
Abel Tesfaye
8881f91349 Implemented nearby button that displays wifi sharing intent and long press button that opens wifi qr share fragment
Test: manual - took a video
Change-Id: I931aabaada09c87b4a7936bcde4fcff8bc237dd0
2020-11-13 22:20:31 +00:00
pihuei
55fb2b745d Use system day/night to switch theme instead of from intent extra.
Use value-night to give theme instead of directly from intent extra when Setup day/nNight mode enabled and in Setup flow

Before:
<vision settings>
https://hsv.googleplex.com/4837266235064320
<wifi dialog>
https://hsv.googleplex.com/5687053981319168
<lock screen with disabling button>
https://hsv.googleplex.com/4843506419892224
<lock screen with enabling button>
https://hsv.googleplex.com/5650348922372096
<fingerprint intro>
https://hsv.googleplex.com/5133769046491136
<fingerprint touch>
https://hsv.googleplex.com/5681937198874624
<fingerprint left touch>
https://hsv.googleplex.com/5767441676238848
<squeeze release>
https://hsv.googleplex.com/6632476812247040

After:
<vision settings>
https://hsv.googleplex.com/6213298875793408
<wifi dialog>
https://hsv.googleplex.com/6025790804197376
<lock screen with disabling button>
https://hsv.googleplex.com/5747461219942400
<lock screen with enabling button>
https://hsv.googleplex.com/5766700781797376
<fingerprint intro>
https://hsv.googleplex.com/6751334529236992
<fingerprint touch>
https://hsv.googleplex.com/5625963293442048
<fingerprint left touch>
https://hsv.googleplex.com/4518139360444416
<squeeze release>
https://hsv.googleplex.com/5220720579706880

Bug: 169734655
Test: robo test
Change-Id: I4aab843e28a932c7b823f36f1d8df1e5b2341f4e
2020-11-05 05:09:14 +00:00
Arc Wang
166ece8f1d [Wi-Fi] Remove WifiTrackerLib/AccessPoint constant & API usage
Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.dpp
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.details
Change-Id: I857cf0e261c1b07c3d7b6bc08632880ed8c71ee1
2020-07-22 07:53:52 +00:00
Arc Wang
0496d2c142 [Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice
This change uses WifiTrackerLib's WifiPickerTracker & WifiEntry
to replace SettingLib's WifiTracker & AccessPoint.

This change includes

1. WifiScanWorker has the callbacks similar to a lifecycle component
   but it's not a lifecycle component. Let WifiScanWorker implements
   LifecycleOwner and provides #getLifecycle() for WifiPickerTracker.

2. Remove captive portal related code because WifiEntry#connect will
   handle captive portal login if it's necessary.

3. Create WifiSliceItem to wrap WifiEntry because WifiEntry is an
   abstract object and it does not provide copy constructor.
   Without copy construcor, Wi-Fi Slice may show unexpected information
   when a WifiEntry is updated.

Bug: 155613549
Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.slice
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: I2d66ea4905daca3244ec4cf8f2935cda817480b1
2020-07-22 07:53:18 +00:00
Greg Kaiser
9e9255fb2a Revert "[Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice"
This reverts commit 7b1aded2a6.

Reason for revert: Settings is crashing for WiFi selection in SetupWizard on wembley

Bug: 161434533
Change-Id: I1d90e9bae1b31862fba674db0d7497e43f987a7f
Test: Locally reverted, reflashed, and was able to select WiFi without Settings crashing.
Exempt-From-Owner-Approval: Revert to clear up P0 while all owners are outside of work hours
2020-07-16 14:47:31 +00:00
Arc Wang
7b1aded2a6 [Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice
This change uses WifiTrackerLib's WifiPickerTracker & WifiEntry
to replace SettingLib's WifiTracker & AccessPoint.

This change includes

1. WifiScanWorker has the callbacks similar to a lifecycle component
   but it's not a lifecycle component. Let WifiScanWorker implements
   LifecycleOwner and provides #getLifecycle() for WifiPickerTracker.

2. Remove captive portal related code because WifiEntry#connect will
   handle captive portal login if it's necessary.

3. Create WifiSliceItem to wrap WifiEntry because WifiEntry is an
   abstract object and it does not provide copy constructor.
   Without copy construcor, Wi-Fi Slice may show unexpected information
   when a WifiEntry is updated.

4. Use WifiTrackerLib's NetworkDetailsTracker & WifiEntry in
   WifiDialogActivity because it gets a WifiEntry key from Wi-Fi Slice.
   NetworkDetailsTracker can get the WifiEntry of th key.

Bug: 155613549
Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.slice
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: I0718f4647cea007a9b701922f3121a388dd43918
2020-07-16 15:56:42 +08:00
Arc Wang
fa128687ae [Wi-Fi] Quit worker thread in WifiNetworkListFragment
Should quit worker thread when a fragment is about to
be destroyed.

Bug: 145100890
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiNetworkListFragmentTest
Change-Id: I840750ac4e9601fe553ce219305876581bea7197
2020-05-15 11:17:20 +08:00
Arc Wang
b04ea2dde5 [Wi-Fi] Apply WifiTrackerLib objects in WifiDppQrCodeScannerFragment
Bug: 152571756
Bug: 145100890
Test: manual
      Scan QR code and check connection.
Change-Id: I21b9fadc83ab185df5710f4bf777afec3dfbbc8d
2020-05-11 22:17:55 +08:00
Arc Wang
e46081819d [Wi-Fi] Apply WifiTrackerLib objects in wifi/dpp/WifiNetworkListFragment
Bug: 152571756
Bug: 145100890
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiNetworkListFragmentTest
Change-Id: I2136b452da4a3008f493c46c8ed14b311cfc9fdd
2020-05-07 22:36:41 +08:00
TreeHugger Robot
a4f0893796 Merge "[a11y] Set focus on "Pairing device" text once QR code is scanned." 2020-04-07 06:50:43 +00:00
Arc Wang
75d6c9fce3 [Wi-Fi] Fix exception when 'Add device' with a Wi-Fi suggestion network
WifiEntry#getWifiConfiguration() may return null when
WifiEntry#isSaved() is true. Use WifiEntry#canEasyConnect()
which checks if WifiEntry#getWifiConfiguration() returns
a non-null value.

Bug: 153029289
Test: manual
      Connect to a WPA2 Wi-Fi network, click 'Add device'
      in Wi-Fi detail page and see if it crashes.
Change-Id: Ia15503eea795fdd54826699828f02c9ff95dcefa
2020-04-02 22:35:30 +08:00
Joshua Duong
07ad841e2d [a11y] Set focus on "Pairing device" text once QR code is scanned.
Bug: 152462657

Test: Manual. Enable TalkBack in Settings > Accessibility. Navigate to
Developer options > Wireless debugging > Pairing device with QR code.
Scan a valid QR code, which should change to "Pairing device..." and
screen reader should say "Pairing device".

Change-Id: If467b56f787bda765fce1e5d46f8ab3c6210dc76
2020-04-01 14:17:19 -07:00
Hai Shalom
5bb13ebefe [Settings] Use WifiConfiguration#setSecurityParams
Use WifiConfiguration#setSecurityParams instead of manually
initializing security params.

Bug: 150889755
Test: Created new connections and manually connected to open, WPA2,
WPA3, EAP and SUITE-B networks.

Change-Id: I42f4c21a37428ee87be14f6ba09dc54fa327054a
2020-03-09 22:25:56 +00:00
Joshua Duong
85a65e2dc6 [adb-wireless] Add Wireless Debugging Switch in Developer options.
Bug: 111434128
Bug: 119492574

Test: make RunSettingsRoboTests ROBOTEST_FILTER=WirelessDebugging
Change-Id: I188badb43035172642cf235bb27e56d3a1dea169
2020-02-21 00:01:58 -08:00
David Su
930a4ec30e Rename requirePMF to requirePmf
Rename to conform to API guidelines.

Bug: 146046526
Test: compiles
Change-Id: Ib888ca3fc14cf30c9217b1f573c2279627c65a22
2020-01-27 17:47:15 -08:00
Quang Luong
f21a9b0b11 Merge "Remove WifiEntry transitional security types" 2020-01-23 19:49:43 +00:00
Etan Cohen
245ced4b78 [DPP] Fix intent dispatching
Bug: 139381558
Test: verified with test app WifiEasyConnect.apk
Change-Id: If0588695b591e7ba5ba664586813c4a264a9779e
2020-01-15 17:43:14 +00:00
Quang Luong
73c168162b Remove WifiEntry transitional security types
WifiEntry should only supply one security type through getSecurity(),
and transitional types should be converted to the security type that
will be used for connection.

Test: build
Bug: 70983952
Change-Id: I977f6b955b7794124e9b90ad4655cd2a2a30cb6e
2020-01-14 17:08:45 -08:00
Etan Cohen
af76fb83a2 [DPP] Read the remote band support EXTRA
Bug: 139381558
Test: use demo app (WifiEasyConnect.apk) to send information, observe logs
Change-Id: I23a6e90c450c4b094000fb16c3c2f89eea3b0ef9
2020-01-13 18:31:49 -08:00
lesl
24a505c4eb softap: Use set/getPassphrase to replace set/getWpa2Passphrase
Bug: 142752869
Test: Manual, on/off/setting change for hotspot function
Test: make RunSettingsRoboTests ROBOTEST_FILTER=CodeInspectionTest
Change-Id: I22c89f15a6ef1c5366394431cc5aa7031a573d45
2020-01-09 19:23:41 +08:00
Arc Wang
08b4204643 [Wi-Fi] Replace some WifiEntryShell methods with WifiEntry version
These WifiEntryShell methods are removed:

getNetworkId
hiddenSSID
isPasspoint

Bug: 143326832
Test: build
Change-Id: I6642992a90ea18328817cb58931cc370045b1e56
2020-01-02 18:11:32 +08:00
Hai Shalom
457203e156 [DPP R2] Update ACTION_PROCESS_WIFI_EASY_CONNECT_URI intent
Update ACTION_PROCESS_WIFI_EASY_CONNECT_URI intent to include
additional information in case of a failure. The intent will
return an extra field with result code for R1 and R2 devices,
and additional details for R2 devices: SSID, channe list,
and band list.

Bug: 139381558
Test: Manual test
Change-Id: I6f1805f3b1ff72efc83961083c1311a24d6ebd3e
2019-12-25 20:06:38 -08:00
Hai Shalom
38ab4d342b [DPP R2] Added support for DPP R2 events
Added support for DPP R2 events that provide additional
details about the onboarding process of a remote enrollee.
Specifically, DPP R2 configurator waits for response from
the enrollee, which reports back the SSID, tried channels
and band support in case it cannot find the AP. When it
reports success, then it means that it is acutally connected.

Bug: 139381558
Test: Manual tests with DPP R1 and R2 enrollees
Test: atest DppManagerTest
Test: act.py -c ../WifiDppConfig.json -tc WifiDppTest
Change-Id: If19fc6906ec5abbdceef0742dc52b42c7d0acfe0
2019-12-19 17:57:41 -08:00
Arc Wang
b60e91bf0b [Wi-Fi] Replace WifiTracker with WifiTracker2 in WifiDetailPreferenceController2
There are still many methods not implemented in WifiEntry. This change has below workarounds:

1. Add WifiEntryShell to provide dummy WifiEntry methods.
2. Add @Ignore to WifiDetailPreferenceController2Test.

Must remove these workarounds after we have more constructed WifiEntry methods.

Bug: 143326832
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.details2
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.savedaccesspoints2
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: Ic2edb424b9c645838558fe131991ccb9105dc64c
2019-12-18 15:21:59 +08:00
Arc Wang
5f23a43660 [Wi-Fi] Fix transition mode problems
Replace SECURITY_PSK_SAE_TRANSITION & SECURITY_OWE_TRANSITION with
AccessPpoint#isPskSaeTransitionMode() &
AccessPpoint#isPskOweTransitionMode()

Bug: 144320676
Bug: 144320649
Bug: 144325162
Bug: 144321574
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi

Change-Id: Ic3c7ac1238a51b6e215ed63761720d2bc371d012
2019-12-06 18:17:07 +08:00
lesl
ff012f03a8 Wifi Setting: Use SoftApConfiguration for Tether Setting
Bug: 145578449
Test: Manual
Test: make RunSettingsRoboTests ROBOTEST_FILTER=CodeInspectionTest
Change-Id: I02b4dcbb7b6e29b67ecc7356200f3fc3a1007562
2019-12-05 17:28:24 +08:00
TreeHugger Robot
04e72e23d9 Merge "[Wi-Fi] Prevent fatal exception for null intent action" 2019-08-22 09:51:01 +00:00
Arc Wang
1e451cf708 [Wi-Fi] Prevent fatal exception for null intent action
Intent action may be null.

Bug: 139020487
Test: WifiScanModeActivityTest
      WifiNoInternetDialogTest
      WifiDppConfiguratorActivityTest
      WifiDppEnrolleeActivityTest
Change-Id: Ie6119a86aaee1a6b40710705a0ea7d92c24736d6
2019-08-22 13:42:47 +08:00
Arc Wang
03f1ee1b50 [Wi-Fi] Support hidden SSID Wi-Fi networks for Wi-Fi QR code scanner & generator
WifiTracker#getAccessPoints() only contains a hidden SSID Wi-Fi
network if it's a saved Wi-Fi network. We can't check if a hidden
SSID Wi-Fi network is reachable inadvance. That is the difference
after a user scanned a QR code of hidden SSID Wi-Fi network.

Bug: 135892509
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiDppUtilsTest
      manual test:
      Click the Share button of a connected hidden SSID Wi-Fi network
      and save the QR code image. Use Wi-Fi QR code scanner in Wi-Fi
      Settings to scan the saved QR code image.

Change-Id: I9056622e6dadb04e5642ae1c50fb4d227a78d26d
2019-08-20 09:54:17 +08:00
Arc Wang
a12b372dd2 [Wi-Fi DPP] Refine code
Remove unused code.
Rename some variables and methods for better readability.
Fix typos.
Reduce unnecessary variable scope and method scope.
Simplify some code logic.

Bug: 120645817
Test: atest com.android.settings.wifi.dpp
Change-Id: I8f30b3e445f25ada927e995befee1783d2270b91
2019-07-19 10:29:06 +08:00
TreeHugger Robot
23fbf601a0 Merge "[Wi-Fi DPP] Improve TalkBack information for events" 2019-07-10 08:39:05 +00:00
TreeHugger Robot
d9f680fc92 Merge "[Wi-Fi DPP] Add a parent class for WifiDppConfiguratorActivity and WifiDppEnrolleeActivity" 2019-07-09 11:15:28 +00:00
Arc Wang
1df7f2d1c1 [Wi-Fi DPP] Improve TalkBack information for events
Title and summary may be changed after user operations or Wi-Fi Easy connect handshake,
setAccessibilityLiveRegion could specify accessibility services to announce these changes.

In WifiDppAddDeviceFragment, I set title before summary for correct TalkBack announce sequence.

Bug: 137069941
Test: manual
Change-Id: Id032cfcb86c350feeac808f070665ac26261ceb8
2019-07-09 17:30:01 +08:00
Arc Wang
2d211208d6 [Wi-Fi DPP] remove unused code
Bug: 120645817
Test: atest com.android.settings.wifi.dpp
Change-Id: I467888de0efe8ae663863e9eacc15e77d32487d2
2019-07-08 18:23:56 +08:00
Arc Wang
91c3146b48 [Wi-Fi DPP] Add a parent class for WifiDppConfiguratorActivity and WifiDppEnrolleeActivity
To reduce duplicate code.

Bug: 129305770
Test: atest com.android.settings.wifi.dpp
Change-Id: I3046c7d6dd7159a9a7dd7766370a65c0f5b3150e
2019-07-08 17:36:18 +08:00
Arc Wang
781a61930c Merge "[Wi-Fi DPP] Wi-Fi QR code scanner is not working after a connection fail" into qt-dev am: d64b6c8846 am: 9b971efd6b
am: 6d435d69b3

Change-Id: I7aeb116d93e608204541d626b48274ffd8254bb6
2019-06-19 21:34:36 -07:00
Arc Wang
d64b6c8846 Merge "[Wi-Fi DPP] Wi-Fi QR code scanner is not working after a connection fail" into qt-dev 2019-06-20 01:34:09 +00:00
Arc Wang
0a628e227a Merge "[Wi-Fi DPP] Support WPA2/WPA3 transition mode" into qt-dev am: d8916ef151 am: c58b3aaf0f
am: 8c123c6a59

Change-Id: Id6caccbcd9790e0f9393b8b0ddea6ebb529706b6
2019-06-19 10:36:46 -07:00
TreeHugger Robot
8d51b1b4e8 Merge "[Wi-Fi DPP] Improve Wi-Fi QR code error messages" 2019-06-19 10:05:45 +00:00
TreeHugger Robot
11e1d45c9c Merge "[Wi-Fi DPP] Fix UI defects" 2019-06-19 06:17:22 +00:00