Commit Graph

20 Commits

Author SHA1 Message Date
Quang Anh Luong
5aa95553cd Do not auto-downgrade WPA3->Transition mode if password too short
Hotspot security is auto-downgraded from WPA3->Transition mode if the
band is changed from 6Ghz -> 2.4/5GHz. However, Transition mode requires
a password of 8 chars or more, but WPA3 SAE does not. Avoid changing the
security type if the current password is less than 8 chars.

Flag: EXEMPT minor bugfix

Bug: 366452667
Test: atest WifiHotspotRepositoryTest
Change-Id: I1abadd59966e170b51899782746b9f14e33e6186
2024-09-26 07:09:47 +00:00
Weng Su
1a975d6f72 Refine WifiHotspotRepository variable names
- Since the speed of hotspot design was changed to refer to allowed channels rather than usable channels, remove the "Usable" naming to avoid confusion

Fix: 360312024
Flag: EXEMPT refactor
Test: Manual testing
atest -c WifiHotspotRepositoryTest

Change-Id: Ie54a351e0f788e1b6aeec079ccf6671f7f78fb1c
2024-08-16 18:55:36 +08:00
Weng Su
6c2158edef Get available channels allowed by Hotspot
- Use getAllowedChannels API instead of getUsableChannels API to avoid corner cases

Bug: 352267181
Flag: EXEMPT bugfix
Test: Manual testing
atest -c WifiHotspotRepositoryTest

Change-Id: I5ae4a4d429924ac2b8676bbbb27016a93ccd9a1b
2024-08-14 17:10:05 +08:00
Chaohui Wang
0be6705da6 Call wifiStatusTracker.fetchInitialState first
Before set listening to true, otherwise could cause race condition.

Fix: 354500692
Flag: EXEMPT bug fix
Test: manual - check wifi summary
Change-Id: I4160f89fae666ac02b816b7d9a69bac581bbd29e
2024-07-30 13:51:52 +08:00
Chaohui Wang
b0acf0daf5 InternetPreferenceController V2 (7/7)
Support alternateSummary for HotspotNetworkEntry.

Bug: 339884322
Flag: com.android.settings.flags.internet_preference_controller_v2
Test: manual - on Internet
Test: unit test
Change-Id: I6a454e86453ea8ed597a032d3f5769b6cf9102ba
2024-06-13 16:47:01 +08:00
Chaohui Wang
52b5aef999 InternetPreferenceController V2 (2/n)
Add ConnectivityRepository, when no validated connection,
show "Airplane mode is on" or "Networks available".

Bug: 339884322
Flag: com.android.settings.flags.internet_preference_controller_v2
Test: manual - on Internet
Test: unit test
Change-Id: I227d896fd52c099fb6d58a7ab60e98983fdab8cf
2024-06-07 15:28:46 +08:00
Quang Luong
d65e37e8a8 Change hotspot security to WPA3-Transition when switching from 6GHz
When changing hotspot to 6GHz, we auto-set the security to WPA3-SAE. However, we don't do the reverse when changing out of 6GHz, which may cause legacy devices to be unable to connect. Instead, always revert back to WPA3-Transition when switching out of 6GHz.

Bug: 323764310
Test: manual
Change-Id: I06b1e97f452da86a693812a6620c251ff5d0e932
2024-06-04 07:48:16 +00:00
Weng Su
8d4eb82d95 Refer the SoftApCapability cache if getUsableChannels is unsupported
- Get SAP band capability from SoftApCapability#getSupportedChannelList

Bug: 272450463
Bug: 338503507
Bug: 340789513
Flag: EXEMPT bugfix
Test: Manual testing
atest -c WifiHotspotRepositoryTest

Change-Id: I7b792c27bc3c41e78417032f797d57b030d6db72
2024-05-28 13:08:45 +08:00
Weng Su
c5ab12732b Add ActivityOptions to start instant hotspot settings in the background
- Set intent with ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED

Bug: 338244101
Flag: None
Test: Manual testing
atest -c SharedConnectivityRepositoryTest

Change-Id: Ie983758dc039a7bbca80cca478ca23444527089b
2024-05-03 04:26:50 +08:00
Weng Su
25e20caf00 Show Hotspot informations in Network details settings
- Show Hotspot device type in hearder icon

- Show Hotspot device details informations.
  - Internet source (network type)
  - Battery

Bug: 297346368
Test: manual test
atest -c WifiNetworkDetailsFragmentTest \
         WifiDetailPreferenceController2Test
atest -c SharedConnectivityRepositoryTest \
         WifiNetworkDetailsViewModelTest

Change-Id: I4bd090e00681911c8fac469289fd818237b8c518
2023-08-29 04:06:55 +08:00
Weng Su
63321a1a83 Add Instant hotspot preference
- Add Instant hotspot preference to Wi-Fi hotspot settings

- Wait onServiceConnected callback and then getSettingsState

- Use the PendingIntent provided by SharedConnectivitySettingsState to launch Instant hotspot settings

Bug: 268550769
Test: manual test
atest -c WifiTetherSettingsTest
atest -c WifiTetherViewModelTest \
         SharedConnectivityRepositoryTest

Change-Id: I343599e6127d9b1cb4af661dcc80a8683589c7b8
2023-08-21 11:14:04 +00:00
Chaohui Wang
8e2ae547d6 Clean up FeatureFactory.getFeature()
Bug: 286764889
Test: m Settings
Change-Id: I7e472e6b0ca6b7a735c1b92742ddf06c545176fc
2023-08-08 08:41:48 +00:00
Weng Su
7171e0a29b Show "Not available" summary when hotspot speed is unavailable
- Show "Not available" summary when hotspot bands (5 GHz and 6 GHz) are unavailable

- Update debug logs to track down issues

Bug: 285769583
Test: manual test
atest -c WifiHotspotSpeedSettingsTest
atest -c WifiHotspotSpeedViewModelTest

Change-Id: If1050c120b4b612d3a9adbe886c2f12db82b793e
2023-06-08 21:38:01 +08:00
Weng Su
8b7e0d7c88 Avoid hotspot band updates when country code is inactive
- The SAP usable channels cannot be queried when the country code is not activated, causing UI to display wrong design

Bug: 280554293
Test: Manual test
atest -c WifiHotspotRepositoryTest

Change-Id: I58e8879438d7a630808aa2c4b69f21eb19968ab1
2023-05-19 12:51:50 +08:00
Weng Su
bf0e8c1dc7 Restart Wi-Fi tethering automatically if configuration change
- When the Wi-Fi Hotspot is already started, if the user changes the configuration, the Wi-Fi Hotspot will be restarted automatically.

- When the Wi-Fi hotspot restarts, display a circle on the screen to indicate that it is processing.

Bug: 245258763
Test: manual test
atest -c WifiTetherSettingsTest \
         WifiHotspotSpeedSettingsTest
atest -c WifiHotspotRepositoryTest \
         WifiHotspotSecuritySettingsTest \
         WifiHotspotSecurityViewModelTest \
         WifiHotspotSpeedViewModelTest \
         WifiTetherViewModelTest

Change-Id: I6fdd5892916703095f28d0589ebc3b7dd59fcd61
2023-04-21 13:06:44 +08:00
Weng Su
d965ff3049 Fallback to "Extended Compatibility" if Speed feature is not ready
- Fallback to the "Extended Compatibility" design when the following conditions occur
  - 5 GHz band is not supported on the device
  - 5 GHz SAP available channels cannot be obtained from WifiManager
  - 6 GHz SAP available channels cannot be obtained from WifiManager

Bug: 272450463
Test: manual test
atest -c WifiTetherSettingsTest
atest -c WifiTetherViewModelTest \
         WifiHotspotRepositoryTest \
         WifiTetherSecurityPreferenceControllerTest.java \
         WifiTetherMaximizeCompatibilityPreferenceControllerTest

Change-Id: If7c8c41ebe86f5e7d8e4737ab7a82d38c9d633de
2023-04-18 20:49:25 +08:00
Weng Su
9f80cd2f77 Add Wi-Fi hotspot > Security Settings page
- Restrict low security type when 6 GHz band is selected
  - Disable "WPA2/WPA3-Personal" security type
  - Disable "WPA2-Personal" security type
  - Disable "None" security type

- Automatically updated security type to WPA3 when 6 GHz band is selected
  - Regenerate password when security type is changed from None

Bug: 245258763
Test: manual test
atest -c WifiTetherSettingsTest
atest -c WifiTetherViewModelTest \
         WifiHotspotSecuritySettingsTest \
         WifiHotspotSecurityViewModelTest \
         WifiHotspotRepositoryTest

Change-Id: I31b08795419baed10dc40b876aeec175f6f41e69
2023-04-12 18:19:49 +08:00
Weng Su
17631aeff7 Added "Speed and Compatibility" Settings page
- Show each band option individually in single-band devices
  - Show "2.4 and 5GHz" combined option in dual-band devices

- Disable 5 GHz option if the device is in the restricted country

- Disable 6 GHz option if the device is in the restricted country
  - Hide 6 GHz option if the old device does not support 6 GHz band.

Bug: 245258763
Test: manual test
atest -c WifiHotspotSpeedSettingsTest
atest -c WifiHotspotSpeedViewModelTest \
         WifiHotspotRepositoryTest

Change-Id: I358d4ff8d62df72fd5080e55f40d588c238d01fb
2023-03-23 10:53:43 +08:00
Weng Su
bcca5ebf1a Add "Speed & compatibility" preference to Wi-Fi hotspot Settings
- Show 4 speed types in summary
  - 2.4 Ghz
  - 5 Ghz
  - 2.4 and 5 GHz
  - 6 GHz

Bug: 245258763
Test: manual test
atest -c WifiTetherViewModelTest
atest -c WifiHotspotRepositoryTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherSettingsTest

Change-Id: I6deb41cb355b0ceb1f1fd2d84408a83b90433e7d
2023-03-09 20:06:37 +08:00
Weng Su
d7bbd4505c Refer to the last Hotspot password when generating the password
- Query the last Hotspot password when security type is SECURITY_TYPE_OPEN and it will be used when the user changes to another security type

- If the last hotspot password is an empty string, then generate random password

Bug: 201789473
Test: manual test
atest -c WifiHotspotRepositoryTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherPasswordPreferenceControllerTest

Change-Id: Id3a846099238433e7b6c8b934fa26a74df0dcb61
2023-02-24 11:22:40 +08:00