Files
app_Settings/res/xml/mobile_network_settings.xml
Dominik Maier 2f81c06361 Add toggle to allow or disable null algorithms
This adds the allow null algorithms toogle to the Settings UI.

If supported by the smartphone baseband, the toggle allows users to opt
out of null algorithms, unencrypted cellular communication, for all
cellular generations.

This toggle is behind a feature flag that is off by default. It also
requires radio network HAL 2.1 or later to show.

Co-authored-by: Gil Cukierman <cukie@google.com>
Bug: b/237529943
Test: atest NullAlgorithmsPreferenceControllerTest
Test: adb shell device_config put cellular_security
enable_null_cipher_toggle true; // On cuttlefish, you can now see the
toggle in SIM settings.

Change-Id: Ia03cceee5463171ca455fa0624b911e06f222d2d
2022-12-16 16:29:49 +00:00

303 lines
15 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2019 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:key="mobile_network_pref_screen">
<com.android.settings.widget.SettingsMainSwitchPreference
android:key="use_sim_switch"
android:title="@string/mobile_network_use_sim_on"
settings:controller="com.android.settings.network.telephony.MobileNetworkSwitchController"/>
<PreferenceCategory
android:key="enabled_state_container"
android:title="@string/summary_placeholder"
settings:controller="com.android.settings.network.telephony.DisabledSubscriptionController"
android:layout="@layout/preference_category_no_label">
<com.android.settings.datausage.DataUsageSummaryPreference
android:key="status_header"
android:visibility="gone"
android:selectable="false"/>
<ListPreference
android:key="calls_preference"
android:title="@string/calls_preference"
settings:controller="com.android.settings.network.telephony.CallsDefaultSubscriptionController"
settings:allowDividerAbove="true"/>
<ListPreference
android:key="sms_preference"
android:title="@string/sms_preference"
settings:controller="com.android.settings.network.telephony.SmsDefaultSubscriptionController"/>
<Preference
android:key="cdma_lte_data_service_key"
android:title="@string/cdma_lte_data_service"
settings:controller="com.android.settings.network.telephony.DataServiceSetupPreferenceController"
settings:allowDividerAbove="true"
settings:allowDividerBelow="false"/>
<SwitchPreference
android:key="mobile_data_enable"
android:title="@string/mobile_data_settings_title"
android:summary="@string/mobile_data_settings_summary"
settings:controller="com.android.settings.network.telephony.MobileDataPreferenceController"
settings:allowDividerAbove="true"/>
<SwitchPreference
android:key="auto_data_switch"
android:title="@string/auto_data_switch_title"
android:summary="@string/auto_data_switch_summary"
settings:controller="com.android.settings.network.telephony.AutoDataSwitchPreferenceController"/>
<com.android.settingslib.RestrictedSwitchPreference
android:key="button_roaming_key"
android:title="@string/roaming"
android:persistent="false"
android:summaryOn="@string/roaming_enable"
android:summaryOff="@string/roaming_disable"
settings:userRestriction="no_data_roaming"
settings:controller="com.android.settings.network.telephony.RoamingPreferenceController"/>
<Preference
android:key="data_usage_summary"
android:title="@string/mobile_data_usage_title"
settings:controller="com.android.settings.network.telephony.DataUsagePreferenceController"/>
<com.android.settings.datausage.BillingCyclePreference
android:key="billing_preference"
android:title="@string/billing_cycle"
settings:controller="com.android.settings.datausage.BillingCyclePreferenceController"/>
<SwitchPreference
android:key="carrier_wifi_toggle"
android:title="@string/carrier_wifi_offload_title"
android:summary="@string/carrier_wifi_offload_summary"
settings:controller="com.android.settings.network.CarrierWifiTogglePreferenceController"/>
<Preference
android:key="carrier_wifi_network"
android:title="@string/carrier_wifi_network_title"
android:selectable="false"
settings:searchable="false"/>
<SwitchPreference
android:key="mms_message"
android:title="@string/mms_message_title"
android:summary="@string/mms_message_summary"
settings:controller="com.android.settings.network.telephony.MmsMessagePreferenceController"/>
<SwitchPreference
android:key="enhanced_4g_lte"
android:title="@string/enhanced_4g_lte_mode_title"
android:persistent="false"
android:summary="@string/enhanced_4g_lte_mode_summary"
settings:keywords="@string/keywords_enhance_4g_lte"
settings:controller="com.android.settings.network.telephony.Enhanced4gLtePreferenceController"/>
<SwitchPreference
android:key="4g_calling"
android:title="@string/enhanced_4g_lte_mode_title_4g_calling"
android:persistent="false"
android:summary="@string/enhanced_4g_lte_mode_summary_4g_calling"
settings:keywords="@string/keywords_enhance_4g_lte"
settings:controller="com.android.settings.network.telephony.Enhanced4gCallingPreferenceController"/>
<SwitchPreference
android:key="advance_call"
android:title="@string/enhanced_4g_lte_mode_title_advanced_calling"
android:persistent="false"
android:summary="@string/enhanced_4g_lte_mode_summary"
settings:keywords="@string/keywords_enhance_4g_lte"
settings:controller="com.android.settings.network.telephony.Enhanced4gAdvancedCallingPreferenceController"/>
<SwitchPreference
android:key="contact_discovery_opt_in"
android:title="@string/contact_discovery_opt_in_title"
android:persistent="false"
android:summary="@string/contact_discovery_opt_in_summary"
settings:controller="com.android.settings.network.telephony.ContactDiscoveryPreferenceController"/>
<ListPreference
android:key="preferred_network_mode_key"
android:title="@string/preferred_network_mode_title"
android:summary="@string/preferred_network_mode_summary"
android:entries="@array/preferred_network_mode_choices"
android:entryValues="@array/preferred_network_mode_values"
android:dialogTitle="@string/preferred_network_mode_dialogtitle"
settings:controller="com.android.settings.network.telephony.PreferredNetworkModePreferenceController"/>
<ListPreference
android:key="enabled_networks_key"
android:title="@string/preferred_network_mode_title"
android:summary="@string/preferred_network_mode_summary"
android:entries="@array/enabled_networks_choices"
android:entryValues="@array/enabled_networks_values"
android:dialogTitle="@string/preferred_network_mode_dialogtitle"
settings:controller="com.android.settings.network.telephony.EnabledNetworkModePreferenceController"/>
<Preference
android:key="carrier_settings_version_key"
android:title="@string/carrier_settings_version"
android:enabled="false"
android:shouldDisableView="false"
android:selectable="false"
settings:controller="com.android.settings.network.telephony.CarrierSettingsVersionPreferenceController"
settings:enableCopying="true"/>
<PreferenceCategory
android:key="calling_category"
android:title="@string/call_category"
settings:controller="com.android.settings.network.telephony.CallingPreferenceCategoryController">
<Preference
android:key="wifi_calling"
android:title="@string/wifi_calling_settings_title"
android:summary="@string/wifi_calling_summary"
settings:controller="com.android.settings.network.telephony.WifiCallingPreferenceController">
<intent android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
android:targetClass="com.android.settings.Settings$WifiCallingSettingsActivity">
<extra android:name="show_drawer_menu" android:value="true"/>
</intent>
</Preference>
<SwitchPreference
android:key="video_calling_key"
android:title="@string/video_calling_settings_title"
android:persistent="true"
settings:controller="com.android.settings.network.telephony.VideoCallingPreferenceController"/>
<SwitchPreference
android:key="backup_calling_key"
android:title="@string/backup_calling_settings_title"
android:persistent="false"
android:summary="@string/backup_calling_setting_summary"
settings:keywords="@string/keywords_backup_calling"
settings:controller="com.android.settings.network.telephony.BackupCallingPreferenceController"/>
</PreferenceCategory>
<com.android.settings.network.telephony.cdma.CdmaListPreference
android:key="cdma_system_select_key"
android:title="@string/cdma_system_select_title"
android:summary="@string/cdma_system_select_summary"
android:entries="@array/cdma_system_select_choices"
android:entryValues="@array/cdma_system_select_values"
android:dialogTitle="@string/cdma_system_select_dialogtitle"
settings:controller="com.android.settings.network.telephony.cdma.CdmaSystemSelectPreferenceController"/>
<com.android.settings.network.telephony.cdma.CdmaListPreference
android:key="cdma_subscription_key"
android:title="@string/cdma_subscription_title"
android:summary="@string/cdma_subscription_summary"
android:entries="@array/cdma_subscription_choices"
android:entryValues="@array/cdma_subscription_values"
android:dialogTitle="@string/cdma_subscription_dialogtitle"
settings:controller="com.android.settings.network.telephony.cdma.CdmaSubscriptionPreferenceController"/>
<PreferenceCategory
android:key="network_operators_category_key"
android:title="@string/network_operator_category"
settings:controller="com.android.settings.network.telephony.NetworkPreferenceCategoryController">
<SwitchPreference
android:key="auto_select_key"
android:title="@string/select_automatically"
settings:controller="com.android.settings.network.telephony.gsm.AutoSelectPreferenceController"/>
<Preference
android:key="choose_network_key"
android:title="@string/choose_network_title"
settings:controller="com.android.settings.network.telephony.gsm.OpenNetworkSelectPagePreferenceController"/>
</PreferenceCategory>
<!--We want separate APN setting from reset of settings because we want user to change it with caution-->
<com.android.settingslib.RestrictedPreference
android:key="telephony_apn_key"
android:persistent="false"
android:title="@string/mobile_network_apn_title"
settings:allowDividerAbove="true"
settings:controller="com.android.settings.network.telephony.ApnPreferenceController"/>
<Preference
android:key="carrier_settings_key"
android:title="@string/carrier_settings_title"
settings:controller="com.android.settings.network.telephony.CarrierPreferenceController">
</Preference>
<com.android.settingslib.RestrictedSwitchPreference
android:key="enable_2g"
android:title="@string/enable_2g_title"
android:summary="@string/enable_2g_summary"
settings:controller="com.android.settings.network.telephony.Enable2gPreferenceController"
settings:useAdminDisabledSummary="true"
settings:userRestriction="no_cellular_2g"/>
<SwitchPreference
android:key="allow_null_algorithms"
android:title="@string/allow_null_algorithms_title"
android:summary="@string/allow_null_algorithms_summary"
settings:controller=
"com.android.settings.network.telephony.NullAlgorithmsPreferenceController" />
<SwitchPreference
android:key="nr_advanced_calling"
android:title="@string/nr_advanced_calling_title"
android:persistent="false"
android:summary="@string/nr_advanced_calling_summary"
settings:keywords="@string/keywords_nr_advanced_calling"
settings:controller="com.android.settings.network.telephony.NrAdvancedCallingPreferenceController"/>
</PreferenceCategory>
<Preference
android:key="convert_to_esim"
android:persistent="false"
android:title="@string/convert_to_esim_title"
settings:controller="com.android.settings.network.telephony.ConvertToEsimPreferenceController"/>
<Preference
android:key="transfer_esim"
android:persistent="false"
android:title="@string/transfer_esim_to_another_device_title"
settings:controller="com.android.settings.network.telephony.TransferEsimPreferenceController"/>
<Preference
android:key="erase_sim"
android:persistent="false"
android:title="@string/mobile_network_erase_sim"
settings:allowDividerBelow="true"
settings:controller="com.android.settings.network.telephony.DeleteSimProfilePreferenceController"/>
<com.android.settingslib.widget.FooterPreference
android:key="disable_sim_explanation"
android:title="@string/mobile_network_disable_sim_explanation"
android:selectable="false"
settings:allowDividerAbove="true"
settings:searchable="false"
settings:controller="com.android.settings.network.telephony.DisableSimFooterPreferenceController"/>
<com.android.settingslib.widget.FooterPreference
android:key="no_5g_in_dsds_explanation"
android:title="@string/no_5g_in_dsds_text"
android:selectable="false"
settings:allowDividerAbove="true"
settings:searchable="false"
settings:controller="com.android.settings.network.telephony.NrDisabledInDsdsFooterPreferenceController"/>
</PreferenceScreen>