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
diff --git a/res/xml/wifi_hotspot_security.xml b/res/xml/wifi_hotspot_security.xml
new file mode 100644
index 0000000..3993d47
--- /dev/null
+++ b/res/xml/wifi_hotspot_security.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2023 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:title="@string/wifi_security"
+ settings:searchable="false">
+
+ <com.android.settingslib.widget.SelectorWithWidgetPreference
+ android:key="wifi_hotspot_security_wpa3"
+ android:title="@string/wifi_security_sae"/>
+
+ <com.android.settingslib.widget.SelectorWithWidgetPreference
+ android:key="wifi_hotspot_security_wpa2_wpa3"
+ android:title="@string/wifi_security_psk_sae"/>
+
+ <com.android.settingslib.widget.SelectorWithWidgetPreference
+ android:key="wifi_hotspot_security_wpa2"
+ android:title="@string/wifi_security_wpa2"/>
+
+ <com.android.settingslib.widget.SelectorWithWidgetPreference
+ android:key="wifi_hotspot_security_none"
+ android:title="@string/wifi_security_none"/>
+
+ <com.android.settingslib.widget.FooterPreference
+ android:title="@string/wifi_hotspot_security_footer"/>
+
+</PreferenceScreen>