1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2019 The Android Open Source Project
3
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7
8          http://www.apache.org/licenses/LICENSE-2.0
9
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15-->
16<PreferenceScreen
17    xmlns:android="http://schemas.android.com/apk/res/android"
18    xmlns:settings="http://schemas.android.com/apk/res-auto"
19    android:key="mobile_network_pref_screen">
20
21    <com.android.settings.spa.preference.ComposeMainSwitchPreference
22        android:key="use_sim_switch"
23        settings:controller="com.android.settings.network.telephony.MobileNetworkSwitchController"/>
24
25    <PreferenceCategory
26        android:key="enabled_state_container"
27        android:title="@string/summary_placeholder"
28        settings:controller="com.android.settings.network.telephony.DisabledSubscriptionController"
29        android:layout="@layout/preference_category_no_label">
30
31        <com.android.settings.datausage.DataUsageSummaryPreference
32            android:key="status_header"
33            android:visibility="gone"
34            android:selectable="false"/>
35
36        <ListPreference
37            android:key="calls_preference"
38            android:title="@string/calls_preference"
39            android:summary="@string/summary_placeholder"
40            android:enabled="false"
41            settings:controller="com.android.settings.network.telephony.CallsDefaultSubscriptionController"
42            settings:allowDividerAbove="true"/>
43
44        <ListPreference
45            android:key="sms_preference"
46            android:title="@string/sms_preference"
47            android:summary="@string/summary_placeholder"
48            android:enabled="false"
49            settings:controller="com.android.settings.network.telephony.SmsDefaultSubscriptionController"/>
50
51        <Preference
52            android:key="mobile_network_spn"
53            android:title="@string/mobile_network_spn_title"
54            android:summary="@string/summary_placeholder"
55            android:selectable="false"
56            settings:controller="com.android.settings.network.telephony.MobileNetworkSpnPreferenceController"
57            settings:allowDividerAbove="true" />
58
59        <Preference
60            android:key="phone_number"
61            android:title="@string/status_number"
62            android:summary="@string/summary_placeholder"
63            android:selectable="false"
64            settings:controller="com.android.settings.network.telephony.MobileNetworkPhoneNumberPreferenceController"
65            settings:allowDividerBelow="true"
66            settings:enableCopying="true"/>
67
68        <Preference
69            android:key="cdma_lte_data_service_key"
70            android:title="@string/cdma_lte_data_service"
71            settings:controller="com.android.settings.network.telephony.DataServiceSetupPreferenceController"
72            settings:allowDividerAbove="true"
73            settings:allowDividerBelow="false"/>
74
75        <SwitchPreferenceCompat
76            android:key="mobile_data_enable"
77            android:title="@string/mobile_data_settings_title"
78            android:summary="@string/mobile_data_settings_summary"
79            settings:controller="com.android.settings.network.telephony.MobileDataPreferenceController"
80            settings:allowDividerAbove="true"/>
81
82        <SwitchPreferenceCompat
83            android:key="auto_data_switch"
84            android:title="@string/auto_data_switch_title"
85            android:summary="@string/auto_data_switch_summary"
86            settings:controller="com.android.settings.network.telephony.AutoDataSwitchPreferenceController"/>
87
88        <!-- Settings search is handled by RoamingSearchItem. -->
89        <com.android.settings.spa.preference.ComposePreference
90            android:key="button_roaming_key"
91            settings:searchable="false"
92            settings:controller="com.android.settings.network.telephony.RoamingPreferenceController"/>
93
94        <!-- Settings search is handled by DataUsageSearchItem. -->
95        <Preference
96            android:key="data_usage_summary"
97            android:title="@string/app_cellular_data_usage"
98            settings:searchable="false"
99            settings:controller="com.android.settings.network.telephony.DataUsagePreferenceController"/>
100
101        <!-- Settings search is handled by BillingCycleSearchItem. -->
102        <com.android.settings.datausage.BillingCyclePreference
103            android:key="billing_preference"
104            android:title="@string/billing_cycle"
105            settings:searchable="false"
106            settings:controller="com.android.settings.datausage.BillingCyclePreferenceController"/>
107
108        <SwitchPreferenceCompat
109            android:key="carrier_wifi_toggle"
110            android:title="@string/carrier_wifi_offload_title"
111            android:summary="@string/carrier_wifi_offload_summary"
112            settings:controller="com.android.settings.network.CarrierWifiTogglePreferenceController"/>
113
114        <Preference
115            android:key="carrier_wifi_network"
116            android:title="@string/carrier_wifi_network_title"
117            android:selectable="false"
118            settings:searchable="false"/>
119
120        <!-- Settings search is handled by MmsMessageSearchItem. -->
121        <SwitchPreferenceCompat
122            android:key="mms_message"
123            android:title="@string/mms_message_title"
124            android:summary="@string/mms_message_summary"
125            settings:searchable="false"
126            settings:controller="com.android.settings.network.telephony.MmsMessagePreferenceController"/>
127
128        <SwitchPreferenceCompat
129            android:key="enhanced_4g_lte"
130            android:title="@string/enhanced_4g_lte_mode_title"
131            android:persistent="false"
132            android:summary="@string/enhanced_4g_lte_mode_summary"
133            settings:keywords="@string/keywords_enhance_4g_lte"
134            settings:controller="com.android.settings.network.telephony.Enhanced4gLtePreferenceController"/>
135
136        <SwitchPreferenceCompat
137            android:key="4g_calling"
138            android:title="@string/enhanced_4g_lte_mode_title_4g_calling"
139            android:persistent="false"
140            android:summary="@string/enhanced_4g_lte_mode_summary_4g_calling"
141            settings:keywords="@string/keywords_enhance_4g_lte"
142            settings:controller="com.android.settings.network.telephony.Enhanced4gCallingPreferenceController"/>
143
144        <SwitchPreferenceCompat
145            android:key="advance_call"
146            android:title="@string/enhanced_4g_lte_mode_title_advanced_calling"
147            android:persistent="false"
148            android:summary="@string/enhanced_4g_lte_mode_summary"
149            settings:keywords="@string/keywords_enhance_4g_lte"
150            settings:controller="com.android.settings.network.telephony.Enhanced4gAdvancedCallingPreferenceController"/>
151
152        <SwitchPreferenceCompat
153            android:key="contact_discovery_opt_in"
154            android:title="@string/contact_discovery_opt_in_title"
155            android:persistent="false"
156            android:summary="@string/contact_discovery_opt_in_summary"
157            settings:controller="com.android.settings.network.telephony.ContactDiscoveryPreferenceController"/>
158
159        <!-- Settings search is handled by PreferredNetworkModeSearchItem. -->
160        <ListPreference
161            android:key="preferred_network_mode_key"
162            android:title="@string/preferred_network_mode_title"
163            android:summary="@string/preferred_network_mode_summary"
164            android:entries="@array/preferred_network_mode_choices"
165            android:entryValues="@array/preferred_network_mode_values"
166            android:dialogTitle="@string/preferred_network_mode_dialogtitle"
167            settings:searchable="false"
168            settings:controller="com.android.settings.network.telephony.PreferredNetworkModePreferenceController"/>
169
170        <!-- Settings search is handled by EnabledNetworkModeSearchItem. -->
171        <ListPreference
172            android:key="enabled_networks_key"
173            android:title="@string/preferred_network_mode_title"
174            android:summary="@string/preferred_network_mode_summary"
175            android:entries="@array/enabled_networks_choices"
176            android:entryValues="@array/enabled_networks_values"
177            android:dialogTitle="@string/preferred_network_mode_dialogtitle"
178            settings:searchable="false"
179            settings:controller="com.android.settings.network.telephony.EnabledNetworkModePreferenceController"/>
180
181        <!-- Settings search is handled by CarrierSettingsVersionSearchItem. -->
182        <Preference
183            android:key="carrier_settings_version_key"
184            android:title="@string/carrier_settings_version"
185            settings:searchable="false"
186            settings:controller="com.android.settings.network.telephony.CarrierSettingsVersionPreferenceController"
187            settings:enableCopying="true"/>
188
189        <!-- IMEI -->
190        <Preference
191            android:key="network_mode_imei_info"
192            android:title="@string/status_imei"
193            android:summary="@string/summary_placeholder"
194            settings:keywords="@string/keywords_imei_info"
195            settings:enableCopying="true"
196            settings:controller="com.android.settings.network.telephony.MobileNetworkImeiPreferenceController"/>
197        <!-- EID -->
198        <com.android.settingslib.CustomDialogPreferenceCompat
199            android:key="network_mode_eid_info"
200            android:title="@string/status_eid"
201            android:summary="@string/device_info_protected_single_press"
202            android:positiveButtonText="@string/dlg_ok"
203            android:dialogLayout="@layout/dialog_eid_status"
204            settings:enableCopying="true"
205            settings:controller="com.android.settings.network.telephony.MobileNetworkEidPreferenceController"/>
206
207        <PreferenceCategory
208            android:key="telephony_satellite_settings_category_key"
209            android:title="@string/satellite_setting_title"
210            settings:controller="com.android.settings.network.telephony.SatelliteSettingsPreferenceCategoryController">
211
212            <com.android.settingslib.RestrictedPreference
213                android:key="telephony_satellite_setting_key"
214                android:persistent="false"
215                android:title="@string/satellite_setting_title"
216                settings:keywords="@string/keywords_satellite_setting"
217                settings:controller=
218                    "com.android.settings.network.telephony.SatelliteSettingPreferenceController"/>
219
220        </PreferenceCategory>
221
222        <PreferenceCategory
223            android:key="calling_category"
224            android:title="@string/call_category"
225            settings:controller="com.android.settings.network.telephony.CallingPreferenceCategoryController">
226
227            <!-- Settings search is handled by WifiCallingSearchItem. -->
228            <Preference
229                android:key="wifi_calling"
230                android:title="@string/wifi_calling_settings_title"
231                android:summary="@string/wifi_calling_summary"
232                settings:searchable="false"
233                settings:controller="com.android.settings.network.telephony.WifiCallingPreferenceController">
234                <intent android:action="android.intent.action.MAIN"
235                        android:targetPackage="com.android.settings"
236                        android:targetClass="com.android.settings.Settings$WifiCallingSettingsActivity">
237                    <extra android:name="show_drawer_menu" android:value="true"/>
238                </intent>
239            </Preference>
240
241            <!-- Settings search is handled by WifiCallingSearchItem. -->
242            <SwitchPreferenceCompat
243                android:key="video_calling_key"
244                android:title="@string/video_calling_settings_title"
245                settings:searchable="false"
246                settings:controller="com.android.settings.network.telephony.VideoCallingPreferenceController"/>
247
248        </PreferenceCategory>
249
250        <com.android.settings.network.telephony.cdma.CdmaListPreference
251            android:key="cdma_system_select_key"
252            android:title="@string/cdma_system_select_title"
253            android:summary="@string/cdma_system_select_summary"
254            android:entries="@array/cdma_system_select_choices"
255            android:entryValues="@array/cdma_system_select_values"
256            android:dialogTitle="@string/cdma_system_select_dialogtitle"
257            settings:controller="com.android.settings.network.telephony.cdma.CdmaSystemSelectPreferenceController"/>
258
259        <com.android.settings.network.telephony.cdma.CdmaListPreference
260            android:key="cdma_subscription_key"
261            android:title="@string/cdma_subscription_title"
262            android:summary="@string/cdma_subscription_summary"
263            android:entries="@array/cdma_subscription_choices"
264            android:entryValues="@array/cdma_subscription_values"
265            android:dialogTitle="@string/cdma_subscription_dialogtitle"
266            settings:controller="com.android.settings.network.telephony.cdma.CdmaSubscriptionPreferenceController"/>
267
268        <PreferenceCategory
269            android:key="network_operators_category_key"
270            android:title="@string/network_operator_category"
271            settings:allowDividerBelow="true"
272            settings:controller="com.android.settings.network.telephony.NetworkPreferenceCategoryController">
273
274            <com.android.settings.spa.preference.ComposePreference
275                android:key="auto_select_key"
276                android:title="@string/select_automatically"
277                settings:controller="com.android.settings.network.telephony.gsm.AutoSelectPreferenceController"/>
278
279            <Preference
280                android:key="choose_network_key"
281                android:title="@string/choose_network_title"
282                settings:controller="com.android.settings.network.telephony.gsm.OpenNetworkSelectPagePreferenceController"/>
283        </PreferenceCategory>
284
285        <!--We want separate APN setting from reset of settings because we want user to change it with caution-->
286        <com.android.settingslib.RestrictedPreference
287            android:key="telephony_apn_key"
288            android:persistent="false"
289            android:title="@string/mobile_network_apn_title"
290            settings:keywords="@string/keywords_access_point_names"
291            settings:controller="com.android.settings.network.telephony.ApnPreferenceController"/>
292
293        <Preference
294            android:key="carrier_settings_key"
295            android:title="@string/carrier_settings_title"
296            settings:controller="com.android.settings.network.telephony.CarrierPreferenceController">
297        </Preference>
298
299        <com.android.settingslib.RestrictedSwitchPreference
300            android:key="enable_2g"
301            android:title="@string/enable_2g_title"
302            android:summary="@string/enable_2g_summary"
303            settings:controller="com.android.settings.network.telephony.Enable2gPreferenceController"
304            settings:useAdminDisabledSummary="true"
305            settings:userRestriction="no_cellular_2g"/>
306
307        <SwitchPreferenceCompat
308            android:key="require_cellular_encryption"
309            android:title="@string/require_cellular_encryption_title"
310            android:summary="@string/require_cellular_encryption_summary"
311            settings:controller=
312                "com.android.settings.network.telephony.NullAlgorithmsPreferenceController"/>
313
314        <!-- Settings search is handled by NrAdvancedCallingSearchItem. -->
315        <com.android.settings.spa.preference.ComposePreference
316            android:key="nr_advanced_calling"
317            settings:searchable="false"
318            settings:controller="com.android.settings.network.telephony.NrAdvancedCallingPreferenceController"/>
319    </PreferenceCategory>
320
321    <Preference
322        android:key="convert_to_esim"
323        android:persistent="false"
324        android:title="@string/convert_to_esim_title"
325        settings:controller="com.android.settings.network.telephony.ConvertToEsimPreferenceController"/>
326
327    <Preference
328        android:key="transfer_esim"
329        android:persistent="false"
330        android:title="@string/transfer_esim_to_another_device_title"
331        settings:controller="com.android.settings.network.telephony.TransferEsimPreferenceController"/>
332
333    <Preference
334        android:key="erase_sim"
335        android:persistent="false"
336        android:title="@string/mobile_network_erase_sim"
337        settings:allowDividerBelow="true"
338        settings:controller="com.android.settings.network.telephony.DeleteSimProfilePreferenceController"/>
339
340    <com.android.settingslib.widget.FooterPreference
341        android:key="disable_sim_explanation"
342        android:title="@string/mobile_network_disable_sim_explanation"
343        android:selectable="false"
344        settings:allowDividerAbove="true"
345        settings:searchable="false"
346        settings:controller="com.android.settings.network.telephony.DisableSimFooterPreferenceController"/>
347
348    <com.android.settingslib.widget.FooterPreference
349        android:key="no_5g_in_dsds_explanation"
350        android:title="@string/no_5g_in_dsds_text"
351        android:selectable="false"
352        settings:allowDividerAbove="true"
353        settings:searchable="false"
354        settings:controller="com.android.settings.network.telephony.NrDisabledInDsdsFooterPreferenceController"/>
355</PreferenceScreen>
356