Connectivity is becoming a mainline module in S, so
ConnectivityManager hidden symbols can not be used for outside
components. Besides, most Tethering relevant methods or variables
on CM are migrated to TetheringManager. So replace all these
methods or variables from ConnectivityManager to TetheringManager
on Settings.
Bug: 180693313
Test: make RunSettingsRoboTests ROBOTEST_FILTER=<Modified Test>
Change-Id: Iba4b121a4ddf3f04252aa0355e0e6494a593682a
To log Settings metrics, the MainSwitch extends MainSwitchBar and
replace the SwitchBar in SettingsActivity.
Bug: 175181773
Test: Run robotest and apply the widget in Settings and see the ui
Change-Id: I3add3702e9058ad9192b5172c7cf0e2ccfb55a70
- The SW (Swahili) language is used for a different noun class and is
inappropriate in the context.
- Need to separate different strings for specific situations.
- Use new strings from SettingsLib resource
Bug: 168801172
Bug: 168733667
Test: Manual test
Change-Id: I0e0a688f54ca2ee1b4cd5049c7e0f3ff3112b127
From Android 11, Wi-Fi framework only supports ASCII encoding
for hotspot password, APP should check if password character is
valid.
This change checks if SoftApConfiguration accepts the password
and disable the OK button if the password is invalid.
Bug: 163353576
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiUtilsTest
Change-Id: Ief3c6c1f08f8fcdf128768cde3ab8eef91f19fbe
Change wordings in data usage part into inclusive language.
Bug: 160707804
Test: make RunSettingsRoboTests
Change-Id: I713e52df8201413b884257a51bc1f71a0d43179d
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
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
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
Use WifiManager#isStaApConcurrencySupported() to check if a
device supports STA+AP and shows the footer information.
Bug: 121328949
Test: make RunSettingsRoboTests ROBOTEST_FILTER=TetherSettingsTest
make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherFooterPreferenceControllerTest
Change-Id: I3446abb5cc9cdf76da8d17f5de31bd65715c165c
In the current Settings framework onSwitchToggled has been implemented
to monitor the change in Settings done by user but its getting called
even when Settings is changed using setChecked where under certain
condition like rotation during config changed,
Tether Settings is disabled and then enabled and later before Rotation
Settings remained false due to stop Tethering with Tether Enabled
After Rotation when settings is initialized it is set as disabled
and even after receiving the Tether Enabled it remains Off.
Hence used onClick to monitor user ON/OFF Settings
Bug: 142625203
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherSwitchBarControllerTest.java
Test: Manual
1. Go to Wifi Hotspot Settings
2. Turn ON
3. Change SSID and save
4. Rotate screen soon after saving
Result: Hotspot does not turn ON, remains in OFF state.
Signed-off-by:JeiFeng Lee <linger.lee@mediatek.com>
Change-Id: Ibddacdf35eb3196f40cdb2c240efa902f9123646
Some conutries don't support 5G only hotspot. Thus band convert should
not only work for dual mode device. It should general design since it
will be country dependency.
Bug: 148924644
Bug: 148764406
Test: Manual Test, use command to force country
1. adb root && adb shell cmd wifi force-country-code enabled GB
2. Change Band Setting to 5G prefer
Turn on hotspot to check log and make sure it will enable succeed.
Test:make RunSettingsRoboTests ROBOTEST_FILTER=CodeInspectionTest
Change-Id: I7828c62ef399244531a72aa35c89b71549e0d623
This partially reverts commit 0ccc849de7
which added a config value. Instead, we will use feature flag to switch
between the fragments.
This CL also adds a postfix to keys in all_tether_prefs to
de-duplicate with keys in tether_prefs and wifi_tether_settings.
Bug: 148182953
Change-Id: I92832c786473990065a965409072e4117a7e75a8
Fix: 148618984
Test: make RunSettingsRoboTests
Test: make RunSettingsRoboTests ROBOTEST_FILTER=CodeInspectionTest
isDualModeSupported is being removed, replace it
with isStaApConcurrencySupported.
Bug: 144925765
Test: compiles
Change-Id: Ia3a0417a154ea401579a039113e96ba4578ffd80
Adding this config value to make it easy to switch to developing
Tethering settings UI. Also, using this config value to make sure
that preferences from new AllInOneTetherSettings screen won't show up in
the search results.
Bug: 147915366
Test: make RunSettingsRoboTests ROBOTEST_FILTER=CodeInspectionTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=TetherSettingsTest
Test: make RunSettingsRoboTests
ROBOTEST_FILTER=TetehrPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherSettingsTest
Change-Id: I8c88816a8f2b40fc219cae8d0d442454c5270b2b
Bug: 142752869
Test: Manual, on/off/setting change for hotspot function
Test: make RunSettingsRoboTests ROBOTEST_FILTER=CodeInspectionTest
Change-Id: I22c89f15a6ef1c5366394431cc5aa7031a573d45
This commit makes fixes to the wifi tethering rototests.
These fixes are done by using the proper encoding for the AP bands.
Bug: 146767071
Test: Run robotest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi
Change-Id: I4ddf6ea9328dabed09bc23d355efa188975316b6
With the support of 6GHz in Android, BAND_ANY is no longer equivalent
to 2GHz+5GHz.
This commit makes the changes to adapt with this.
Bug: 139354972
Test: Manual
Change-Id: I29263573fb900a560494a84df5a16ac0e6948f59
As part of the support of the 6GHz band, the concept of dual-band is no
longer valid since we have more than 2 bands supported by Android and
can be checked on the device.
This commit replaces checks on dual-band support with an explicit check
on 5GHz band support.
Bug: 145936758
Bug: 139354972
Test: Manual
Change-Id: Ia118dedb573f61a148764146edf8091ae253a3e2
Moving executor to be the first argument in registerSoftApCallback.
Bug: 144379300
Test: Manually on pixel 3
Change-Id: I5563c1059cc04014a0fd909e2508f7bf497d708e
Updating classes to support making SoftApCallback methods available to @SystemAPI including
the API for registration of a SoftApCallback which includes a change to
now use executor vs handler.
Bug: 143564153
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherPreferenceControllerTest
Also tested manually on a Hawk.
Change-Id: I952ad10dd88b7d97b3cd86b269b8f67b00b1fa15
Also, don't directly reference the default tether ssid overlay. This info
should always be retrieved from wifiManager.
This ensures that we don't use wifi overlays in settings.
Bug: 143464763
Test: atest com.android.server.wifi
Change-Id: I893a4ca0f4243e1eb6f9c8bef810d0b4a493fb88
Adding support for visibility into clients that connect to an active hotspot.
Bug: 137309578
Test: Tested manually on a Hawk
Change-Id: Ife4bb5ca7bbcf075683cb0a233f2b5716ccd51d9
- Add function getXmlResourceId, Fragments don't need to write
xml resource id twice.
- Remove getPreferenceControllers from Indexable.java. Because it will
move to SettingsLib later for other apps which don't need this function
Bug: 135053028
Test: robolectric
Change-Id: I1e74519aecdea3dde64a5aea79f08d766dbc0003
Settings is using CONNECTIVITY_INTERNAL to restrict launching
tether provisoning activity by provioning apps only. However,
CONNECTIVITY_INTERNAL will be deprecated from Android R, replace
the permission to TETHER_PRIVILEGED.
Bug: 32963470
Test: atest TetherServiceTest
Change-Id: I4c8312b92de8d5d9c9090c572e54622dc4fcf9d4
When the security type of hotspot changed, the hidden item will showed because of the Expanded child list is set as constant.
To improve it, dynamicall adjust the Expanded child count according to the security type.
Bug: 138594907
Test: Manually
1. Enter Settings APP -> Network & internet -> Hotspot & tethering
->Wi-Fi hotspot
2. Check if there are only two expanded items if the
Security type is None, or three expaned items if the Security type
is WPA2-personal
3. Change the Security type and back to check item 2 match or not.
Change-Id: I84d1c5dca94d6a218cfc7ecd57e201e1cffdd878
When active cellular internet is switched to CBRS in DSDS case,
default data sub id may not be changed. Fix by using active
subscription id and pass this sub id to entitlement app.
Bug: 134994718
Test: atest TetherServiceTest
Test: manual test with carrer SIMs.
Change-Id: I30a1d70c0690f0dba8f4171a2bde884f9b7ccfc4
// ACTION: Share a Wi-Fi network by generating a QR code
ACTION_SETTINGS_SHARE_WIFI_QR_CODE
// ACTION: Connect to a Wi-Fi network by scanning a QR code
ACTION_SETTINGS_ENROLL_WIFI_QR_CODE
// ACTION: Share Wi-Fi hotspot by generating a QR code
ACTION_SETTINGS_SHARE_WIFI_HOTSPOT_QR_CODE
Bug: 130521826
Test: manual
Change-Id: I4204307dd5318eb7c47e4136dc7d8700d43e4da1
Don't run entitlement if the request is base on outdated subId.
Bug: 129751453
Test: -build, flash, boot
-atest TetherServiceTest
-manual test with carrier SIM
Change-Id: Id3157df1a5758f8c72acbc45c9fefd2215c87395
Merged-In: Id3157df1a5758f8c72acbc45c9fefd2215c87395
Should not do one time initialization for the View in
Preference#onBindViewHolder. Because A view setup in
PreferenceViewHolder may be recycled.
Bug: 127502788
Test: manual
Change-Id: Iedf023fa00d2745a02521b65e5c12165c2bc025b
Use com.android.settingslib.R.layout.preference_two_target in
WifiTetherSsidPreference to add divider line.
Bug: 128940862
Test: manual test
Change-Id: I46dabcee31a91b68b8c2e57c9840a59f8a1be304
1. Change lock screen title and remove description
2. In QR code generator screen, change summary and show password under QR code picture
Bug: 128920152
Bug: 128576809
Test: manual test
Change-Id: Id096d7f417308df14ffe50c618644750aa991df8