Commit Graph

2895 Commits

Author SHA1 Message Date
Arc Wang
2df3a3e7df [Wi-Fi] Support multi-SIM for SIM dependent EAP methods
Before this change, users are not able to choose SIM
card for SIM dependent EAP methods when a device supports
multi-SIM.

This change support to choose a SIM when adding an EAP
Wi-Fi network. And this change support to show the related
SIM information on Wi-Fi detail screen.

Bug: 142792009
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.WifiConfigControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.WifiConfigController2Test
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.details2.WifiDetailPreferenceController2Test
      Manually add an EAP Wi-Fi network of EAP-SIM type, observe the
      value in Wi-Fi detail screen.
Change-Id: I2910931166dc6541897663857c46abcc1b3115fa
2020-07-28 10:02:16 +08:00
Arc Wang
e410325b37 [Wi-Fi] Support multi-SIM for SIM dependent EAP methods
Before this change, users are not able to choose SIM
card for SIM dependent EAP methods when a device supports
multi-SIM.

This change support to choose a SIM when adding an EAP
Wi-Fi network. And this change support to show the related
SIM information on Wi-Fi detail screen.

Bug: 142792009
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.WifiConfigController2Test
      make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi.details2.WifiDetailPreferenceController2Test
      Manually add an EAP Wi-Fi network of EAP-SIM type, observe the
      value in Wi-Fi detail screen.
Change-Id: I2910931166dc6541897663857c46abcc1b3115fa
2020-07-28 09:50:58 +08:00
Arc Wang
55bce77aea Revert "[Wi-Fi] Refactor WifiConnectionPreferenceController with WifiTrackerLib"
This reverts commit ebf8ffd8fd.

Reason for revert: b/161659380

Bug: 161659380
Test: manual, observe threads after launching 'Network & internet'.
Change-Id: I28773eac40c6bf194e3410b829a1a7b744f79597
Merged-In: Id4901d632f7f4634461ebbbc096e36d348a33365
2020-07-25 00:51:50 +00:00
Arc Wang
4f9960231b Merge "[Wi-Fi] Remove WifiTrackerLib/AccessPoint constant & API usage" 2020-07-24 03:21:35 +00:00
TreeHugger Robot
bc7c42621b Merge "[Wi-Fi] Remove the files which use SettingsLib Wi-Fi objects" 2020-07-23 08:01:19 +00:00
Arc Wang
6934c0225b Merge "[Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice" 2020-07-23 01:38:08 +00:00
Arc Wang
551dcf08e4 Merge "[Wi-Fi] Support WifiTrackerLib in WifiDialogActivity" 2020-07-23 01:37:47 +00:00
Goven Liu
ac26cd541c Merge "[Wi-Fi] WiFi Settings inclusive language fix plan phase 1" 2020-07-22 11:06:29 +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
fef7216ef9 [Wi-Fi] Remove the files which use SettingsLib Wi-Fi objects
This change removes

AddDevicePreferenceController
WifiDetailPreferenceController
WifiMeteredPreferenceController
WifiNetworkDetailsFragment
WifiPrivacyPreferenceController

Bug: 152571756
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: Id4901d632f7f4634461ebbbc096e36d348a33365
2020-07-22 07:53:33 +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
Arc Wang
e57ead9a75 [Wi-Fi] Support WifiTrackerLib in WifiDialogActivity
After this change, WifiDialogactivity supports both WifiTrackerLib and
SettingsLib because this is an exported UI component, some other APPs
(e.g., SetupWizard) still use SettingsLib.

Bug: 152571756
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi.WifiDialogActivityTest
      manual
      In Wi-Fi Settings, manually add a Wi-Fi network.
      In SetupWizard, manually add a Wi-Fi network.
Change-Id: I87f477d905cc6ea34ef1afbfade3773920dad6eb
2020-07-22 15:50:42 +08:00
govenliu
fec71036f7 [Wi-Fi] WiFi Settings inclusive language fix plan phase 2
Replace WiFi related terms which contain Blacklist,Dummy,Sane or Sanity Check wordings.
Goal: Create a fixit for Android Platform to reduce the use of non-inclusive language for all code.

Bug: 161425297
Test: make RunSettingsRoboTests -j
Change-Id: I1ff89bd2a6636ada1e0f5b9879aecbbd5dab4012
2020-07-22 12:41:01 +08:00
govenliu
b70ddb9df7 [Wi-Fi] WiFi Settings inclusive language fix plan phase 1
Replace WiFi related terms which contain Master wording.
Goal: Create a fixit for Android Platform to reduce the use of non-inclusive language for all code.

Bug: 161425297
Test: make RunSettingsRoboTests -j or
make RunSettingsRoboTests ROBOTEST_FILTER=DashboardFragmentTest
make RunSettingsRoboTests ROBOTEST_FILTER=WirelessDebuggingPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=AutomaticStorageManagementSwitchPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=AllInOneTetherPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=TopLevelNetworkEntryPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=PrimarySwitchPreferenceTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiPrimarySwitchPreferenceControllerTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherPreferenceControllerTest

Change-Id: I9395c50e092e124016609f88f7c8151554a0d874
2020-07-21 20:56:22 +08:00
TreeHugger Robot
2432658d23 Merge "Revert "[Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice"" 2020-07-16 15:31:50 +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
02d279a453 Merge "[Wi-Fi] Apply WifiTrackerLib objects in Wi-Fi Slice" 2020-07-16 09:32:42 +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
Bonian Chen
a5f08854e3 [Settings] Inclusive language for Data Usage
Change wordings in data usage part into inclusive language.

Bug: 160707804
Test: make RunSettingsRoboTests
Change-Id: I713e52df8201413b884257a51bc1f71a0d43179d
2020-07-15 02:52:32 +00:00
Joshua Duong
c811213dde Merge "[qrcode] Open any available camera if back camera isn't available." into rvc-dev am: 8776749e88 am: d6b68cb328 am: 8917715fca am: c4e8b3822b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/12006805

Change-Id: I60a80788887e25d1296bffd3aff200763b6c8678
2020-06-30 02:30:37 +00:00
Joshua Duong
8776749e88 Merge "[qrcode] Open any available camera if back camera isn't available." into rvc-dev 2020-06-30 01:41:14 +00:00
TreeHugger Robot
b5e41012c1 Merge "[Wi-Fi] Fix MAC address title information display bug" into rvc-dev am: 531dbf5358 am: 5412d4ab3e am: e7cb1080aa am: 3c23bbceeb
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11970200

Change-Id: I0a6d6dfa09e77cb1ea8969f257a2efdb056d2194
2020-06-29 05:23:46 +00:00
Joshua Duong
d683d25f47 [qrcode] Open any available camera if back camera isn't available.
Bug: 159956551

Test: make RunSettingsRoboTests ROBOTEST_FILTER=QrCameraTest
Change-Id: I2aa01330c8d12c478f8392f66359131638590b77
2020-06-25 22:16:33 -07:00
Arc Wang
cef7d97031 [Wi-Fi] Fix MAC address title information display bug
Use WifiTrackerLib, we can use WifiEntry.getPrivacy()
to get the value for a Passpoint network.

Bug: 159672621
Test: manual visual
      Switch Privacy setting in Wi-Fi detail page, observe
      MAC address title.
Change-Id: I5411e727c5f48dc0d65a05706194569ca3bbebdc
2020-06-23 18:27:51 +08:00
David Su
a218f5791b Merge "Stop expecting WifiConfig extra from CONFIGURED_NETWORKS_CHANGED_ACTION broadcast" into rvc-dev am: 15d4970c9d am: 46a4938667 am: cebaf44767 am: 5f34b2e626
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11923937

Change-Id: I25ab81809581b72754f9d4ab7491a3fcce51738f
2020-06-23 04:03:13 +00:00
David Su
15d4970c9d Merge "Stop expecting WifiConfig extra from CONFIGURED_NETWORKS_CHANGED_ACTION broadcast" into rvc-dev 2020-06-23 03:06:39 +00:00
Arc Wang
fb2b144413 Merge "[Wi-Fi] Apply WifiTrackerLib objects in NetworkRequestDialogFragment" 2020-06-21 14:25:18 +00:00
David Su
a9a7f65a10 Stop expecting WifiConfig extra from CONFIGURED_NETWORKS_CHANGED_ACTION broadcast
WifiConfig is no longer sent in this broadcast
due to privacy concerns, so stop reading this
extra. Instead, query WifiManager to find the
matching WifiConfiguration to update.

Bug: 158874479
Test: make RunSettingsRoboTests -j40 ROBOTEST_FILTER="com.android.settings.wifi.details.WifiDetailPreferenceControllerTest"
Change-Id: Ie52339220acbbe111a6aa5f785fbfa409c405b5b
2020-06-19 11:20:21 -07:00
Arc Wang
97659b2dfc [Wi-Fi] Apply WifiTrackerLib objects in NetworkRequestDialogFragment
Bug: 152571756
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: Ie6f63cb8aa81d61bfa41687c73f8c8764cb3cefe
2020-06-19 19:15:42 +08:00
Mark Chien
b727c6d9af Merge "Get entitlement configuration from intent extra" into rvc-dev am: 481816a97d am: 9b626fce11 am: 56b98ca21e am: 7248e67343
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11524847

Change-Id: Ie8a8cd56a93b19313f87377bf5ba600e66cd6b4e
2020-06-17 07:02:13 +00:00
Mark Chien
481816a97d Merge "Get entitlement configuration from intent extra" into rvc-dev 2020-06-17 06:07:52 +00:00
markchien
e22bd7a2e8 Get entitlement configuration from intent extra
Tethering resource configuration is move from framwork to tethering
module. The resource would not be accessible from outside of tethering
module.
List the replacements of framework resources usage and intent extra:
1. R.string.config_mobile_hotspot_provision_response
    --> android.net.extra.TETHER_PROVISIONING_RESPONSE.
2. R.string.config_mobile_hotspot_provision_app_no_ui
    --> android.net.extra.TETHER_UI_PROVISIONING_APP_NAME
3. R.array.config_mobile_hotspot_provision_app
    --> android.net.extra.TETHER_SILENT_PROVISIONING_ACTION
Besides, the current active subId would put in
android.net.extra.TETHER_SUBID

Note: They are not APIs because of API freeze. Now both tethering module
and Settings define these strings independently. Will replace hard code
string as tethering module-lib APIs in b/159085857.

Also move the entitlement response intent registeration from onCreated
to onStartCommand, this can avoid wrong intent registeration if subId
changed between onCreate and when the intent arrived.

Bug: 146918263
Test: atest TetherServiceTest
      atest TetherProvisioningActivityTest

Change-Id: I3d06df01302a9c1f0893712d9250fe394dc66588
2020-06-17 05:47:17 +00:00
Alex Johnston
ff77ef91f8 Merge "Wifi details - handle no profile owner" into rvc-dev am: dd1d9c4db0 am: ec64a1d562 am: 28e4b34ec7 am: 6f9115072a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11866803

Change-Id: I21c612959a9e408f1abea3175c9daa20bd10767f
2020-06-16 20:31:05 +00:00
Alex Johnston
dd1d9c4db0 Merge "Wifi details - handle no profile owner" into rvc-dev 2020-06-16 19:06:52 +00:00
Alex Johnston
10c970c571 Wifi details - handle no profile owner
* If there is no profile owner, then do
  no call DPM method getProfileOwnerAsUser

Bug: 158284193
Test: manual testing
      make RunSettingsRoboTests -j ROBOTEST_FILTER=WifiDetailPreferenceController2Test
Change-Id: Ief1f0b3aa6805d69fc14da8f87a90c9b12bef8c6
2020-06-16 11:05:33 +01:00
Automerger Merge Worker
b312f2af4b Merge "Merge "Merge "Replace ConnectivityManager as TetheringManager" into rvc-dev am: 2aa2b0a2f8 am: 52a3551a7a" into rvc-d1-dev-plus-aosp am: ac3266b1be" into rvc-qpr-dev-plus-aosp am: 8152e9d40f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11770823

Change-Id: I145def075a545a397ce7e631175a5f4e9ada9330
2020-06-15 07:20:58 +00:00
Mark Chien
75b2a75ccd Merge "Remove schedule recheck logic from TetherService" into rvc-dev am: 49b74e24d6 am: 10ef08d80f am: 78b4bc6020 am: 1912ee3e9a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11524846

Change-Id: I78a0a2d461fd96f2af1850c74d78cd34060e66cc
2020-06-15 07:20:22 +00:00
Mark Chien
2aa2b0a2f8 Merge "Replace ConnectivityManager as TetheringManager" into rvc-dev 2020-06-15 06:23:28 +00:00
Mark Chien
49b74e24d6 Merge "Remove schedule recheck logic from TetherService" into rvc-dev 2020-06-15 06:23:11 +00:00
TreeHugger Robot
eac45c6a89 Merge "NetworkRequestDialog: Exit the dialog on connect failure" into rvc-dev 2020-06-15 02:52:27 +00:00
Roshan Pius
924e9e39c1 NetworkRequestDialog: Exit the dialog on connect failure
Connection failure (similar to connection success) is the end of the
processng of a request. We should dismiss the dialog on connection
failure.

Bug: 158844146
Bug: 158616070
Test: Manual tests - Simulate connection failure and ensure that the
dialog vanishes with a toast.

Change-Id: I625ca76298ed549dbed76d398aea0c957c9102fc
Merged-In: I625ca76298ed549dbed76d398aea0c957c9102fc
2020-06-14 15:19:30 +00:00
Roshan Pius
81f9391105 NetworkRequestDialog: Exit the dialog on connect failure
Connection failure (similar to connection success) is the end of the
processng of a request. We should dismiss the dialog on connection
failure.

Bug: 158844146
Test: Manual tests - Simulate connection failure and ensure that the
dialog vanishes with a toast.

Change-Id: I625ca76298ed549dbed76d398aea0c957c9102fc
2020-06-12 19:28:16 +00:00
markchien
17feecffae Replace ConnectivityManager as TetheringManager
Tethering APIs are all move to TetheringManager from Android R.
1. Replace ConnectivityManager tethering API usage as TetheringManager.
2. Use TetheringManager#stopTethering to disable usb tethering instead
of using deprecated ConnectivityService#setUsbTethering
3. Use TetheringManager#stopTethering to disable bluetooth tethering
instead of directly use BluetoothPan#setBlueoothTethering. So bluetooth
getProfileProxy is not needed in TetherService because tethering would
do that when calling #stopTethering.
4. Also support TETHERING_ETHERNET entitlement check that
TETHERING_ETHERNET is new added from Android R.

Bug: 146918263
Test: atest TetherServiceTest
Change-Id: Id969f29d7210f2ee32719c76439049bbc86cd4f6
2020-06-11 23:36:59 +08:00
markchien
257b9bcdfa Remove schedule recheck logic from TetherService
This change just remove unused code.
Tethering no longer ask TetherService to schedule recheck
(use #EXTRA_SET_ALARM) from Android Q. Intead Tethering
(EntitlementManager) would schedule the recheck by itself.

This change is necessary in order to move the resourcesout
of the framework because TetherService needs to know when
it need to re-run entitlement recheck from framework res
(config_mobile_hotspot_provision_check_period).

Bug: 146918263
Test: atest TetherSerivceTest
Change-Id: Ie45859c19b96d0689c45dd610501fae0506742ff
2020-06-11 23:28:49 +08:00
Goven Liu
27083c02fe Merge "[Wi-Fi] Request focus on input field when config a WiFi network" into rvc-dev am: 75d8ada079 am: 194780965f am: 19a357bd33 am: 1975b2ca57
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11818501

Change-Id: Ic4d4dd6f5048001ce1ed7be19058a0e1fc5f9b7f
2020-06-10 10:24:15 +00:00
govenliu
dfdcdf1330 [Wi-Fi] Request focus on input field when config a WiFi network
For better user experience, recover the dialog focus command to get password field focused.

Bug: 158393164
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiConfigController2Test
Change-Id: I343a7b43bd1ad2478991051b0bd8ef6082f75dc1
2020-06-10 07:20:40 +00:00
TreeHugger Robot
1f21573f01 Merge "[Wi-Fi] Enhance WifiNoInternetDialogTest unit test cases" 2020-06-01 07:05:54 +00:00
govenliu
ae6628bd02 [Wi-Fi] Enhance NetworkRequestDialogActivityTest unit test cases
Add new unit test cases in NetworkRequestDialogActivityTest.java

The coverage rate of NetworkRequestDialogActivity will raise from 48% to 91%

Bug: 151696220
Test: make RunSettingsRoboTests ROBOTEST_FILTER=NetworkRequestDialogActivityTest
Change-Id: I6530815ded8d21d01d5da1d7ee5f38ef190d3863
2020-06-01 10:58:11 +08:00
govenliu
90d72813cd [Wi-Fi] Enhance WifiNoInternetDialogTest unit test cases
Add new unit test cases in WifiNoInternetDialogTest.java

The coverage rate of WifiNoInternetDialog will raise from 10% to 95%

Bug: 151696220
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiNoInternetDialogTest
Change-Id: I8256c0adebee9a7f557b467a6ea11cad09e02b33
2020-05-29 14:53:14 +08:00
TreeHugger Robot
345ba41111 Merge "[Wi-Fi] Fix a UI defect of AddAppNetworksFragment" 2020-05-25 04:49:40 +00:00