1/*
2 * Copyright (C) 2017 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
17syntax = "proto2";
18package android.providers.settings;
19
20option java_multiple_files = true;
21
22import "frameworks/base/core/proto/android/providers/settings/common.proto";
23import "frameworks/base/core/proto/android/privacy.proto";
24
25// Note: it's a conscious decision to add each setting as a separate field. This
26// allows annotating each setting with its own privacy tag.
27message GlobalSettingsProto {
28    option (android.msg_privacy).dest = DEST_EXPLICIT;
29
30    repeated SettingsOperationProto historical_operations = 1;
31
32    // These are key=value lists, separated by commas.
33    optional SettingProto activity_manager_constants = 2;
34    optional SettingProto adb_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
35    optional SettingProto add_users_when_locked = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
36
37    message AirplaneMode {
38        option (android.msg_privacy).dest = DEST_EXPLICIT;
39
40        // "airplane_mode_on" in code.
41        optional SettingProto on = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
42        // A comma-separated list of radios that need to be disabled when airplane
43        // mode is on. This overrides wifi_on and bluetooth_on if wifi and bluetooth
44        // are included in the comma-separated list.
45        optional SettingProto radios = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
46        optional SettingProto toggleable_radios = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
47    }
48    optional AirplaneMode airplane_mode = 5;
49
50    reserved 6; // alarm_manager_constants
51    optional SettingProto allow_user_switching_when_system_user_locked = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
52    // This is a key=value list, separated by commas.
53    optional SettingProto always_on_display_constants = 8;
54    optional SettingProto always_finish_activities = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
55    optional SettingProto animator_duration_scale = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
56
57    message Anomaly {
58        option (android.msg_privacy).dest = DEST_EXPLICIT;
59
60        // "anomaly_detection_constants" in code.
61        optional SettingProto detection_constants = 1;
62        // Version of the anomaly config.
63        optional SettingProto config_version = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
64        // A base64-encoded string represents anomaly stats config.
65        optional SettingProto config = 3;
66    }
67    optional Anomaly anomaly = 11;
68
69    message ApnDb {
70        option (android.msg_privacy).dest = DEST_EXPLICIT;
71
72        optional SettingProto update_content_url = 1;
73        optional SettingProto update_metadata_url = 2;
74    }
75    optional ApnDb apn_db = 12;
76
77    message App {
78        option (android.msg_privacy).dest = DEST_EXPLICIT;
79
80        // These are key=value lists, separated by commas.
81        reserved 1; // idle_constants
82        optional SettingProto standby_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
83        optional SettingProto auto_restriction_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
84        optional SettingProto forced_app_standby_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
85        optional SettingProto forced_app_standby_for_small_battery_enabled = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
86    }
87    optional App app = 13;
88
89    optional SettingProto assisted_gps_enabled = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
90    optional SettingProto audio_safe_volume_state = 15 [ (android.privacy).dest = DEST_AUTOMATIC ];
91    optional SettingProto audio_safe_csd_current_value = 157 [ (android.privacy).dest = DEST_AUTOMATIC ];
92    optional SettingProto audio_safe_csd_next_warning = 158 [ (android.privacy).dest = DEST_AUTOMATIC ];
93    optional SettingProto audio_safe_csd_dose_records = 159 [ (android.privacy).dest = DEST_AUTOMATIC ];
94
95    reserved 17; // Used to be autofill_compat_mode_allowed_packages
96
97    message Autofill {
98      option (android.msg_privacy).dest = DEST_EXPLICIT;
99
100      optional SettingProto compat_mode_allowed_packages = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
101      optional SettingProto logging_level = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
102      optional SettingProto max_partitions_size = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
103      optional SettingProto max_visible_datasets = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
104    }
105    optional Autofill autofill = 140;
106
107    reserved 18; // Used to be backup_agent_timeout_parameters
108
109    message Backup {
110        option (android.msg_privacy).dest = DEST_EXPLICIT;
111
112        optional SettingProto backup_agent_timeout_parameters = 1;
113        reserved 2; // Used to be backup_multi_user_enabled which was never used
114    }
115    optional Backup backup = 146;
116
117    message Battery {
118        option (android.msg_privacy).dest = DEST_EXPLICIT;
119
120        optional SettingProto discharge_duration_threshold = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
121        optional SettingProto discharge_threshold = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
122        optional SettingProto saver_constants = 3;
123        optional SettingProto saver_device_specific_constants = 4;
124        optional SettingProto stats_constants = 5;
125        optional SettingProto tip_constants = 6;
126    }
127    optional Battery battery = 19;
128
129    message BleScan {
130        option (android.msg_privacy).dest = DEST_EXPLICIT;
131
132        optional SettingProto always_available = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
133        optional SettingProto low_power_window_ms = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
134        optional SettingProto balanced_window_ms = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
135        optional SettingProto low_latency_window_ms = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
136        optional SettingProto low_power_interval_ms = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
137        optional SettingProto balanced_interval_ms = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
138        optional SettingProto low_latency_interval_ms = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
139        optional SettingProto background_mode = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
140    }
141    optional BleScan ble_scan = 20;
142
143    message Bluetooth {
144        option (android.msg_privacy).dest = DEST_EXPLICIT;
145
146        optional SettingProto class_of_device = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
147        optional SettingProto disabled_profiles = 2;
148        optional SettingProto interoperability_list = 3;
149        optional SettingProto on = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
150        repeated SettingProto headset_priorities = 5;
151        repeated SettingProto a2dp_sink_priorities = 6;
152        repeated SettingProto a2dp_src_priorities = 7;
153        repeated SettingProto a2dp_supports_optional_codecs = 8;
154        repeated SettingProto a2dp_optional_codecs_enabled = 9;
155        repeated SettingProto input_device_priorities = 10;
156        repeated SettingProto map_priorities = 11;
157        repeated SettingProto map_client_priorities = 12;
158        repeated SettingProto pbap_client_priorities = 13;
159        repeated SettingProto sap_priorities = 14;
160        repeated SettingProto pan_priorities = 15;
161        repeated SettingProto hearing_aid_priorities = 16;
162    }
163    optional Bluetooth bluetooth = 21;
164
165    optional SettingProto boot_count = 22 [ (android.privacy).dest = DEST_AUTOMATIC ];
166    reserved 23; // Moved to secure settings bugreport_in_power_menu
167    optional SettingProto cached_apps_freezer_enabled = 152 [ (android.privacy).dest = DEST_AUTOMATIC ];
168    optional SettingProto call_auto_retry = 24 [ (android.privacy).dest = DEST_AUTOMATIC ];
169
170    message CaptivePortal {
171        option (android.msg_privacy).dest = DEST_EXPLICIT;
172
173        optional SettingProto mode = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
174        optional SettingProto detection_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
175        optional SettingProto server = 3;
176        optional SettingProto https_url = 4;
177        optional SettingProto http_url = 5;
178        optional SettingProto fallback_url = 6;
179        optional SettingProto other_fallback_urls = 7;
180        optional SettingProto use_https = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
181        optional SettingProto user_agent = 9;
182    }
183    optional CaptivePortal captive_portal = 25;
184
185    message Carrier {
186        option (android.msg_privacy).dest = DEST_EXPLICIT;
187
188        // List of carrier app certificate mapped to carrier app package id which are whitelisted to
189        // prompt the user for install when a SIM card with matching UICC carrier privilege rules is
190        // inserted.
191        optional SettingProto app_whitelist = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
192        optional SettingProto app_names = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
193        optional SettingProto install_carrier_app_notification_persistent = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
194        optional SettingProto install_carrier_app_notification_sleep_millis = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
195    }
196    optional Carrier carrier = 26;
197
198    message Cdma {
199        option (android.msg_privacy).dest = DEST_EXPLICIT;
200
201        optional SettingProto cell_broadcast_sms = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
202        optional SettingProto roaming_mode = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
203        optional SettingProto subscription_mode = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
204    }
205    optional Cdma cdma = 27;
206
207    optional SettingProto cell_on = 28 [ (android.privacy).dest = DEST_AUTOMATIC ];
208
209    message CertPin {
210        option (android.msg_privacy).dest = DEST_EXPLICIT;
211
212        optional SettingProto update_content_url = 1;
213        optional SettingProto update_metadata_url = 2;
214    }
215    optional CertPin cert_pin = 29;
216
217    optional SettingProto chained_battery_attribution_enabled = 30 [ (android.privacy).dest = DEST_AUTOMATIC ];
218    optional SettingProto compatibility_mode = 31 [ (android.privacy).dest = DEST_AUTOMATIC ];
219
220    message Connectivity {
221        option (android.msg_privacy).dest = DEST_EXPLICIT;
222
223        optional SettingProto metrics_buffer_size = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
224        optional SettingProto change_delay = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
225        optional SettingProto sampling_interval_in_seconds = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
226    }
227    optional Connectivity connectivity = 32;
228
229    optional SettingProto contact_metadata_sync_enabled = 33 [ (android.privacy).dest = DEST_AUTOMATIC ];
230    optional SettingProto contacts_database_wal_enabled = 34 [ (android.privacy).dest = DEST_AUTOMATIC ];
231
232    message Data {
233        option (android.msg_privacy).dest = DEST_EXPLICIT;
234
235        optional SettingProto activity_timeout_mobile = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
236        optional SettingProto activity_timeout_wifi = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
237        optional SettingProto roaming = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
238        optional SettingProto stall_alarm_non_aggressive_delay_in_ms = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
239        optional SettingProto stall_alarm_aggressive_delay_in_ms = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
240    }
241    optional Data data = 35;
242
243    message Database {
244        option (android.msg_privacy).dest = DEST_EXPLICIT;
245
246        optional SettingProto downgrade_reason = 1;
247        optional SettingProto creation_buildid = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
248    }
249    optional Database database = 36;
250
251    message DateTime {
252        option (android.msg_privacy).dest = DEST_EXPLICIT;
253
254        optional SettingProto auto_time = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
255        optional SettingProto auto_time_zone = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
256    }
257    optional DateTime date_time = 16;
258
259    message Debug {
260        option (android.msg_privacy).dest = DEST_EXPLICIT;
261
262        // Name of an application package to be debugged.
263        optional SettingProto app = 1;
264        // Whether views are allowed to save their attribute data.
265        optional SettingProto view_attributes = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
266        // Which application package is allowed to save view attribute data.
267        optional SettingProto view_attributes_application_package = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
268    }
269    optional Debug debug = 37;
270
271    message Default {
272        option (android.msg_privacy).dest = DEST_EXPLICIT;
273
274        optional SettingProto install_location = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
275        optional SettingProto dns_server = 2;
276    }
277    optional Default default = 38;
278
279    message Development {
280        option (android.msg_privacy).dest = DEST_EXPLICIT;
281
282        optional SettingProto settings_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
283        optional SettingProto force_resizable_activities = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
284        optional SettingProto enable_freeform_windows_support = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
285        optional SettingProto force_rtl = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
286        optional SettingProto emulate_display_cutout = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
287        optional SettingProto force_desktop_mode_on_external_displays = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
288        // Deprecated, use enable_non_resizable_multi_window
289        optional SettingProto enable_sizecompat_freeform = 7 [ (android.privacy).dest = DEST_AUTOMATIC, deprecated = true ];
290        optional SettingProto enable_non_resizable_multi_window = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
291        optional SettingProto disable_window_blurs = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
292    }
293    optional Development development = 39;
294
295    message Device {
296        option (android.msg_privacy).dest = DEST_EXPLICIT;
297
298        optional SettingProto name = 1;
299        optional SettingProto provisioned = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
300        optional SettingProto provisioning_mobile_data_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
301        reserved 4; // idle_constants
302        optional SettingProto policy_constants = 5;
303        optional SettingProto demo_mode = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
304    }
305    optional Device device = 40;
306
307    optional SettingProto disk_free_change_reporting_threshold = 41 [ (android.privacy).dest = DEST_AUTOMATIC ];
308
309    message Display {
310        option (android.msg_privacy).dest = DEST_EXPLICIT;
311
312        optional SettingProto size_forced = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
313        optional SettingProto scaling_force = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
314        // Flag to enable or disable display panel low power mode (lpm)
315        // false -> Display panel power saving mode is disabled.
316        // true  -> Display panel power saving mode is enabled.
317        optional SettingProto panel_lpm = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
318    }
319    optional Display display = 42;
320
321    message DnsResolver {
322        option (android.msg_privacy).dest = DEST_EXPLICIT;
323
324        optional SettingProto sample_validity_seconds = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
325        optional SettingProto success_threshold_percent = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
326        optional SettingProto min_samples = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
327        optional SettingProto max_samples = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
328    }
329    optional DnsResolver dns_resolver = 43;
330
331    optional SettingProto dock_audio_media_enabled = 44 [ (android.privacy).dest = DEST_AUTOMATIC ];
332
333    message Download {
334        option (android.msg_privacy).dest = DEST_EXPLICIT;
335
336        optional SettingProto max_bytes_over_mobile = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
337        optional SettingProto recommended_max_bytes_over_mobile = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
338    }
339    optional Download download = 45;
340
341    message Dropbox {
342        option (android.msg_privacy).dest = DEST_EXPLICIT;
343
344        optional SettingProto age_seconds = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
345        optional SettingProto max_files = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
346        optional SettingProto quota_kb = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
347        optional SettingProto quota_percent = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
348        optional SettingProto reserve_percent = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
349        repeated SettingProto settings = 6;
350    }
351    optional Dropbox dropbox = 46;
352
353    message DynamicPowerSavings {
354        option (android.msg_privacy).dest = DEST_EXPLICIT;
355
356        // When to auto disable interventions that were triggered due to
357        // {@link #DYNAMIC_POWER_SAVINGS_ENABLED}. Value is a percentage indicating
358        // a battery level.
359        optional SettingProto disable_threshold = 1 [ (android.privacy).dest = DEST_AUTOMATIC];
360        // Whether dynamic power savings based behaviors should be running or not.
361        optional SettingProto enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC];
362    }
363    optional DynamicPowerSavings dynamic_power_savings = 143;
364
365    message Emergency {
366        option (android.msg_privacy).dest = DEST_EXPLICIT;
367
368        optional SettingProto tone = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
369        optional SettingProto affordance_needed = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
370    }
371    optional Emergency emergency = 47;
372
373    message Enable {
374        option (android.msg_privacy).dest = DEST_EXPLICIT;
375
376        optional SettingProto accessibility_global_gesture_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
377        optional SettingProto gpu_debug_layers = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
378        optional SettingProto ephemeral_feature = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
379        optional SettingProto cellular_on_boot = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
380        optional SettingProto diskstats_logging = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
381        optional SettingProto cache_quota_calculation = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
382        optional SettingProto deletion_helper_no_threshold_toggle = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
383        optional SettingProto gnss_raw_meas_full_tracking = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
384    }
385    optional Enable enable = 48;
386
387    optional SettingProto encoded_surround_output = 49 [ (android.privacy).dest = DEST_AUTOMATIC ];
388    optional SettingProto enhanced_4g_mode_enabled = 50 [ (android.privacy).dest = DEST_AUTOMATIC ];
389    repeated SettingProto error_logcat_lines = 51;
390
391    message Euicc {
392        option (android.msg_privacy).dest = DEST_EXPLICIT;
393
394        optional SettingProto provisioned = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
395        optional SettingProto factory_reset_timeout_millis = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
396    }
397    optional Euicc euicc = 52;
398
399    optional SettingProto fancy_ime_animations = 53 [ (android.privacy).dest = DEST_AUTOMATIC ];
400    optional SettingProto force_allow_on_external = 54 [ (android.privacy).dest = DEST_AUTOMATIC ];
401    // An integer to reduce the FPS by this factor. Only for experiments.
402    optional SettingProto fps_divisor = 55 [ (android.privacy).dest = DEST_AUTOMATIC ];
403    optional SettingProto fstrim_mandatory_interval = 56 [ (android.privacy).dest = DEST_AUTOMATIC ];
404
405    message GlobalHttpProxy {
406        option (android.msg_privacy).dest = DEST_EXPLICIT;
407
408        // Including Global.HTTP_PROXY is redundant since the data is also
409        // encompassed in the host and port fields.
410
411        optional SettingProto host = 1;
412        optional SettingProto port = 2;
413        optional SettingProto exclusion_list = 3;
414        optional SettingProto pac = 4;
415        // Enables the UI setting to allow the user to specify the global HTTP proxy
416        // and associated exclusion list. Simply "set_global_http_proxy".
417        optional SettingProto setting_ui_enabled = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
418    }
419    optional GlobalHttpProxy global_http_proxy = 57;
420
421    optional SettingProto gprs_register_check_period_ms = 58 [ (android.privacy).dest = DEST_AUTOMATIC ];
422
423    message Gpu {
424        option (android.msg_privacy).dest = DEST_EXPLICIT;
425
426        // App allowed to load GPU debug layers.
427        optional SettingProto debug_app = 1;
428        // Ordered GPU debug layer list for Vulkan
429        // i.e. <layer1>:<layer2>:...:<layerN>
430        optional SettingProto debug_layers = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
431        // ANGLE - Force all PKGs to use ANGLE, regardless of any other settings
432        optional SettingProto angle_gl_driver_all_angle = 3;
433        // ANGLE - List of PKGs that specify an OpenGL driver
434        optional SettingProto angle_gl_driver_selection_pkgs = 4;
435        // ANGLE - Corresponding OpenGL driver selection for the PKG
436        optional SettingProto angle_gl_driver_selection_values = 5;
437        // App that can provide layer libraries.
438        optional SettingProto debug_layer_app = 6;
439        // Ordered GPU debug layer list for GLES
440        // i.e. <layer1>:<layer2>:...:<layerN>
441        optional SettingProto debug_layers_gles = 7;
442        // Updatable Driver - global preference for all Apps
443        // 0 = Default
444        // 1 = All Apps use updatable production driver
445        // 2 = All apps use updatable prerelease driver
446        // 3 = All Apps use system graphics driver
447        optional SettingProto updatable_driver_all_apps = 8;
448        // Updatable Driver - List of Apps selected to use updatable production driver
449        // i.e. <pkg1>,<pkg2>,...,<pkgN>
450        optional SettingProto updatable_driver_production_opt_in_apps = 9;
451        // Updatable Driver - List of Apps selected not to use updatable production driver
452        // i.e. <pkg1>,<pkg2>,...,<pkgN>
453        optional SettingProto updatable_driver_production_opt_out_apps = 10;
454        // Updatable Driver - List of Apps that are forbidden to use updatable production driver
455        optional SettingProto updatable_driver_production_denylist = 11;
456        // Updatable Driver - List of Apps that are allowed to use updatable production driver
457        optional SettingProto updatable_driver_production_allowlist = 12;
458        // ANGLE - List of Apps that can check ANGLE rules
459        optional SettingProto angle_allowlist = 13;
460        // Updatable Driver - List of denylists, each denylist is a denylist for
461        // a specific updatable production driver version
462        optional SettingProto updatable_driver_production_denylists = 14;
463        // ANGLE - Show a dialog box when ANGLE is selected for the currently running PKG
464        optional SettingProto show_angle_in_use_dialog = 15;
465        // Updatable Driver - List of libraries in sphal accessible by updatable driver
466        optional SettingProto updatable_driver_sphal_libraries = 16;
467        // ANGLE - External package containing ANGLE libraries
468        optional SettingProto angle_debug_package = 17;
469        // Updatable Driver - List of Apps selected to use updatable prerelease driver
470        // i.e. <pkg1>,<pkg2>,...,<pkgN>
471        optional SettingProto updatable_driver_prerelease_opt_in_apps = 18;
472
473        optional SettingProto angle_egl_features = 19;
474    }
475    optional Gpu gpu = 59;
476
477    message Hdmi {
478        option (android.msg_privacy).dest = DEST_EXPLICIT;
479
480        optional SettingProto control_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
481        optional SettingProto system_audio_control_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
482        optional SettingProto control_auto_wakeup_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
483        optional SettingProto control_auto_device_off_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
484    }
485    optional Hdmi hdmi = 60;
486
487    optional SettingProto heads_up_notifications_enabled = 61 [ (android.privacy).dest = DEST_AUTOMATIC ];
488    optional SettingProto hidden_api_blacklist_exemptions = 62 [ (android.privacy).dest = DEST_AUTOMATIC ];
489
490    message InetCondition {
491        option (android.msg_privacy).dest = DEST_EXPLICIT;
492
493        optional SettingProto debounce_up_delay = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
494        optional SettingProto debounce_down_delay = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
495    }
496    optional InetCondition inet_condition = 63;
497
498    message InstantApp {
499        option (android.msg_privacy).dest = DEST_EXPLICIT;
500
501        optional SettingProto dexopt_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
502        optional SettingProto ephemeral_cookie_max_size_bytes = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
503        optional SettingProto installed_min_cache_period = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
504        optional SettingProto installed_max_cache_period = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
505        optional SettingProto uninstalled_min_cache_period = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
506        optional SettingProto uninstalled_max_cache_period = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
507    }
508    optional InstantApp instant_app = 64;
509
510    message IntentFirewall {
511        option (android.msg_privacy).dest = DEST_EXPLICIT;
512
513        optional SettingProto update_content_url = 1;
514        optional SettingProto update_metadata_url = 2;
515    }
516    optional IntentFirewall intent_firewall = 65;
517
518    reserved 66; // job_scheduler_constants
519    reserved 149; // job_scheduler_quota_controller_constants
520    reserved 150; // job_scheduler_time_controller_constants
521
522    optional SettingProto keep_profile_in_background = 67 [ (android.privacy).dest = DEST_AUTOMATIC ];
523
524    message LangId {
525        option (android.msg_privacy).dest = DEST_EXPLICIT;
526
527        optional SettingProto update_content_url = 1;
528        optional SettingProto update_metadata_url = 2;
529    }
530    optional LangId lang_id = 68;
531
532    message Location {
533        option (android.msg_privacy).dest = DEST_EXPLICIT;
534
535        optional SettingProto background_throttle_interval_ms = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
536        optional SettingProto background_throttle_proximity_alert_interval_ms = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
537        // Packages that are whitelisted for background throttling (throttling will
538        // not be applied).
539        optional SettingProto background_throttle_package_whitelist = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
540        optional SettingProto settings_link_to_permissions_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
541        // If set to 1, {@link Secure#LOCATION_MODE} will be set to {@link
542        // Secure#LOCATION_MODE_OFF} temporarily for all users.
543        optional SettingProto global_kill_switch = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
544        optional SettingProto gnss_satellite_blocklist = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
545        optional SettingProto gnss_hal_location_request_duration_millis = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
546        // Packages that are whitelisted for ignoring location settings (during emergencies)
547        optional SettingProto ignore_settings_package_whitelist = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
548    }
549    optional Location location = 69;
550
551    message LowPowerMode {
552        option (android.msg_privacy).dest = DEST_EXPLICIT;
553
554        // Simply "low_power_mode" in code.
555        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
556        // Battery level [1-100] at which low power mode automatically turns on. If
557        // 0, it will not automatically turn on.
558        optional SettingProto trigger_level = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
559        // The max value for {@link #LOW_POWER_MODE_TRIGGER_LEVEL}. If this setting
560        // is not set or the value is 0, the default max will be used.
561        optional SettingProto trigger_level_max = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
562        // Whether automatic battery saver mode is controlled via percentage,
563        // {@link #DYNAMIC_POWER_SAVINGS_ENABLED} or disabled.
564        optional SettingProto automatic_power_saver_mode = 4 [ (android.privacy).dest = DEST_AUTOMATIC];
565        // If 1, battery saver (low_power_mode) will be re-activated after the device is
566        // unplugged from a charger or rebooted.
567        optional SettingProto sticky_enabled = 5;
568        // Whether sticky battery saver should be deactivated once the battery level has reached the
569        // threshold specified by sticky_disable_level.
570        optional SettingProto sticky_auto_disable_enabled = 6;
571        // When a device is unplugged from a changer (or is rebooted), do not re-activate battery
572        // saver even if {@link #LOW_POWER_MODE_STICKY} is 1, if the battery level is equal to or
573        // above this threshold.
574        optional SettingProto sticky_auto_disable_level = 7;
575    }
576    optional LowPowerMode low_power_mode = 70;
577
578    optional SettingProto lte_service_forced = 71 [ (android.privacy).dest = DEST_AUTOMATIC ];
579    repeated SettingProto max_error_bytes = 151;
580
581    message ManagedDeviceProvisioning {
582        optional SettingProto managed_provisioning_defer_provisioning_to_role_holder = 1;
583    }
584    optional ManagedDeviceProvisioning managed_device_provisioning = 156;
585
586    optional SettingProto mdc_initial_max_retry = 72 [ (android.privacy).dest = DEST_AUTOMATIC ];
587
588    message Mhl {
589        option (android.msg_privacy).dest = DEST_EXPLICIT;
590
591        optional SettingProto input_switching_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
592        optional SettingProto power_charge_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
593    }
594    optional Mhl mhl = 73;
595
596    message MobileData {
597        option (android.msg_privacy).dest = DEST_EXPLICIT;
598
599        // Whether mobile data connections are allowed by the user. Simply
600        // "mobile_data" in code.
601        optional SettingProto allowed = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
602        // Whether the mobile data connection should remain active even when higher
603        // priority networks like WiFi are active, to help make network switching
604        // faster.
605        optional SettingProto always_on = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
606    }
607    optional MobileData mobile_data = 74;
608
609    // Ringer mode. A change in this value will not reflect as a change in the
610    // ringer mode.
611    optional SettingProto mode_ringer = 75 [ (android.privacy).dest = DEST_AUTOMATIC ];
612
613    // This is an optional feature where ringer mode affects alarm stream as well
614    optional SettingProto mute_alarm_stream_with_ringer_mode = 160 [ (android.privacy).dest = DEST_AUTOMATIC ];
615
616    reserved 147; // Used to be apply_ramping_ringer
617
618    message MultiSim {
619        option (android.msg_privacy).dest = DEST_EXPLICIT;
620
621        // Subscription to be used for voice call on a multi sim device. The
622        // supported values are 0 = SUB1, 1 = SUB2 and etc.
623        optional SettingProto voice_call_subscription = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
624        optional SettingProto voice_prompt = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
625        optional SettingProto data_call_subscription = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
626        optional SettingProto sms_subscription = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
627        optional SettingProto sms_prompt = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
628    }
629    optional MultiSim multi_sim = 76;
630
631    // Whether we've enabled native flags health check on this device. Takes effect on
632    // reboot. The value "1" enables native flags health check; otherwise it's disabled.
633    optional SettingProto native_flags_health_check_enabled = 144 [ (android.privacy).dest = DEST_AUTOMATIC ];
634
635    message Netstats {
636        option (android.msg_privacy).dest = DEST_EXPLICIT;
637
638        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
639        optional SettingProto poll_interval = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
640        optional SettingProto time_cache_max_age = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
641        optional SettingProto global_alert_bytes = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
642        optional SettingProto sample_enabled = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
643        optional SettingProto augment_enabled = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
644        optional SettingProto dev_bucket_duration = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
645        optional SettingProto dev_persist_bytes = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
646        optional SettingProto dev_rotate_age = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
647        optional SettingProto dev_delete_age = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
648        optional SettingProto uid_bucket_duration = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
649        optional SettingProto uid_persist_bytes = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
650        optional SettingProto uid_rotate_age = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
651        optional SettingProto uid_delete_age = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
652        optional SettingProto uid_tag_bucket_duration = 15 [ (android.privacy).dest = DEST_AUTOMATIC ];
653        optional SettingProto uid_tag_persist_bytes = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
654        optional SettingProto uid_tag_rotate_age = 17 [ (android.privacy).dest = DEST_AUTOMATIC ];
655        optional SettingProto uid_tag_delete_age = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
656    }
657    optional Netstats netstats = 77;
658
659    message Network {
660        option (android.msg_privacy).dest = DEST_EXPLICIT;
661
662        // User preference for which network(s) should be used.
663        optional SettingProto preference = 1;
664        optional SettingProto preferred_network_mode = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
665        optional SettingProto scorer_app = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
666        optional SettingProto switch_notification_daily_limit = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
667        optional SettingProto switch_notification_rate_limit_millis = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
668        optional SettingProto avoid_bad_wifi = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
669        optional SettingProto metered_multipath_preference = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
670        optional SettingProto watchlist_last_report_time = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
671        optional SettingProto scoring_ui_enabled = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
672        optional SettingProto recommendations_enabled = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
673        optional SettingProto recommendations_package = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
674        optional SettingProto recommendation_request_timeout_ms = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
675        optional SettingProto watchlist_enabled = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
676        optional SettingProto scoring_provisioned = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
677        optional SettingProto access_timeout_ms = 15 [ (android.privacy).dest = DEST_AUTOMATIC ];
678        optional SettingProto recommended_network_evaluator_cache_expiry_ms = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
679    }
680    optional Network network = 78;
681
682    // Whether to enable new contacts aggregator or not.
683    // 1 = enable, 0 = disable.
684    optional SettingProto new_contact_aggregator = 79 [ (android.privacy).dest = DEST_AUTOMATIC ];
685    optional SettingProto night_display_forced_auto_mode_available = 80 [ (android.privacy).dest = DEST_AUTOMATIC ];
686
687    message Nitz {
688        option (android.msg_privacy).dest = DEST_EXPLICIT;
689
690        // If UTC time between two NITZ signals is greater than this value then the second signal
691        // cannot be ignored.
692        //
693        // This value is in milliseconds. It is used for telephony-based time and time zone
694        // detection.
695        optional SettingProto update_diff = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
696
697        // If the elapsed realtime between two NITZ signals is greater than this value then the
698        // second signal cannot be ignored.
699        //
700        // This value is in milliseconds. It is used for telephony-based time and time zone
701        // detection.
702        optional SettingProto update_spacing = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
703
704        // If the device connects to a telephony network and was disconnected from a telephony
705        // network for less than this time, a previously received NITZ signal can be restored.
706        //
707        // This value is in milliseconds. It is used for telephony-based time and time zone
708        // detection.
709        optional SettingProto network_disconnect_retention = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
710    }
711    optional Nitz nitz = 81;
712
713    message Notification {
714        option (android.msg_privacy).dest = DEST_EXPLICIT;
715
716        optional SettingProto max_notification_enqueue_rate = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
717        optional SettingProto show_notification_channel_warnings = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
718        // The list of snooze options for notifications. This is encoded as a key=value list,
719        // separated by commas.
720        optional SettingProto snooze_options = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
721        optional SettingProto smart_replies_in_notifications_flags = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
722        // Configuration options for smart replies and smart actions in notifications. This is
723        // encoded as a key=value list separated by commas.
724        optional SettingProto smart_suggestions_in_notifications_flags = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
725        optional SettingProto bubbles = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
726        optional SettingProto disable_screen_share_protections_for_apps_and_notifications = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
727    }
728    optional Notification notification = 82;
729
730    optional SettingProto nr_nsa_tracking_screen_off_mode = 153 [ (android.privacy).dest = DEST_AUTOMATIC ];
731
732    message Ntp {
733        option (android.msg_privacy).dest = DEST_EXPLICIT;
734
735        // Preferred NTP server.
736        optional SettingProto server = 1;
737        // Timeout in milliseconds to wait for NTP server.
738        optional SettingProto timeout_ms = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
739    }
740    optional Ntp ntp = 84;
741
742    // Details about the User Absent For Small Battery feature.
743    message UserAbsentSmallBattery {
744        option (android.msg_privacy).dest = DEST_EXPLICIT;
745
746        // Whether or not to enable the User Absent, Radios Off feature
747        optional SettingProto radios_off_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
748
749        // Whether or not to enable the User Absent, Touch Off feature
750        optional SettingProto touch_off_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
751    }
752    optional UserAbsentSmallBattery user_absent_small_battery = 85;
753
754    // Whether to disable the automatic scheduling of system updates.
755    optional SettingProto ota_disable_automatic_update = 86 [ (android.privacy).dest = DEST_AUTOMATIC ];
756    // Overlay display devices setting.
757    // The value is a specially formatted string that describes the size and
758    // density of simulated secondary devices.
759    // Format: {width}x{height}/dpi;...
760    optional SettingProto overlay_display_devices = 87 [ (android.privacy).dest = DEST_AUTOMATIC ];
761    // If set to 1, SettingsProvider's restoreAnyVersion="true" attribute will
762    // be ignored and restoring to lower version of platform API will be
763    // skipped.
764    optional SettingProto override_settings_provider_restore_any_version = 88 [ (android.privacy).dest = DEST_AUTOMATIC ];
765    // The series of successively longer delays used in retrying to download PAC file.
766    optional SettingProto pac_change_delay = 89 [ (android.privacy).dest = DEST_AUTOMATIC ];
767
768    message PackageVerifier {
769        option (android.msg_privacy).dest = DEST_EXPLICIT;
770
771        // Whether the package manager should send package verification broadcasts
772        // for verifiers to review apps prior to installation.
773        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
774        optional SettingProto timeout = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
775        optional SettingProto default_response = 3;
776        optional SettingProto setting_visible = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
777        optional SettingProto include_adb = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
778    }
779    optional PackageVerifier package_verifier = 90;
780
781    message PdpWatchdog {
782        option (android.msg_privacy).dest = DEST_EXPLICIT;
783
784        optional SettingProto poll_interval_ms = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
785        optional SettingProto long_poll_interval_ms = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
786        optional SettingProto error_poll_interval_ms = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
787        optional SettingProto trigger_packet_count = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
788        optional SettingProto error_poll_count = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
789        optional SettingProto max_pdp_reset_fail_count = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
790    }
791    optional PdpWatchdog pdp_watchdog = 91;
792
793    // Defines global runtime overrides to window policy.
794    optional SettingProto policy_control = 92;
795    optional SettingProto power_manager_constants = 93;
796    reserved 94; // Used to be priv_app_oob_enabled
797
798    optional SettingProto power_button_long_press_duration_ms = 154 [ (android.privacy).dest = DEST_AUTOMATIC ];
799
800    message PrepaidSetup {
801        option (android.msg_privacy).dest = DEST_EXPLICIT;
802
803        // URL to open browser on to allow user to manage a prepay account.
804        optional SettingProto data_service_url = 1;
805        // URL to attempt a GET on to see if this is a prepay device.
806        optional SettingProto detection_target_url = 2;
807        // Host to check for a redirect to after an attempt to GET
808        // SETUP_PREPAID_DETECTION_TARGET_URL. (If we redirected there, this is a
809        // prepaid device with zero balance.)
810        optional SettingProto detection_redir_host = 3;
811    }
812    optional PrepaidSetup prepaid_setup = 95;
813
814    message Private {
815        option (android.msg_privacy).dest = DEST_LOCAL;
816
817        // The requested Private DNS mode and an accompanying specifier.
818        // msg_privacy settings don't apply to sub messages, only to primitive
819        // fields, so these must also be explicitly set to LOCAL.
820        optional SettingProto dns_mode = 1 [ (android.privacy).dest = DEST_LOCAL ];
821        optional SettingProto dns_specifier = 2 [ (android.privacy).dest = DEST_LOCAL ];
822    }
823    optional Private private = 96;
824
825    // The number of milliseconds to allow the provisioning apn to remain active.
826    optional SettingProto provisioning_apn_alarm_delay_in_ms = 97 [ (android.privacy).dest = DEST_AUTOMATIC ];
827    optional SettingProto read_external_storage_enforced_default = 98 [ (android.privacy).dest = DEST_AUTOMATIC ];
828    optional SettingProto require_password_to_decrypt = 99 [ (android.privacy).dest = DEST_AUTOMATIC ];
829    optional SettingProto safe_boot_disallowed = 100 [ (android.privacy).dest = DEST_AUTOMATIC ];
830
831    message Selinux {
832        option (android.msg_privacy).dest = DEST_EXPLICIT;
833
834        optional SettingProto update_content_url = 1;
835        optional SettingProto update_metadata_url = 2;
836        optional SettingProto status = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
837    }
838    optional Selinux selinux = 101;
839
840    // Flag for allowing ActivityManagerService to send ACTION_APP_ERROR intents
841    // on application crashes and ANRs. If this is disabled, the crash/ANR
842    // dialog will never display the "Report" button.
843    optional SettingProto send_action_app_error = 102 [ (android.privacy).dest = DEST_AUTOMATIC ];
844    // Let user pick default install location.
845    optional SettingProto set_install_location = 103 [ (android.privacy).dest = DEST_AUTOMATIC ];
846    optional SettingProto shortcut_manager_constants = 104;
847    optional SettingProto show_first_crash_dialog = 105 [ (android.privacy).dest = DEST_AUTOMATIC ];
848    optional SettingProto show_hidden_launcher_icon_apps_enabled = 141 [ (android.privacy).dest = DEST_AUTOMATIC ];
849    optional SettingProto show_restart_in_crash_dialog = 106 [ (android.privacy).dest = DEST_AUTOMATIC ];
850    optional SettingProto show_mute_in_crash_dialog = 107 [ (android.privacy).dest = DEST_AUTOMATIC ];
851    optional SettingProto show_new_app_installed_notification_enabled = 142 [ (android.privacy).dest = DEST_AUTOMATIC ];
852
853    message SmartSelection {
854        option (android.msg_privacy).dest = DEST_EXPLICIT;
855
856        optional SettingProto update_content_url = 1;
857        optional SettingProto update_metadata_url = 2;
858    }
859    optional SmartSelection smart_selection = 108;
860
861    message Sms {
862        option (android.msg_privacy).dest = DEST_EXPLICIT;
863
864        optional SettingProto outgoing_check_interval_ms = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
865        optional SettingProto outgoing_check_max_count = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
866        // Used to disable SMS short code confirmation. Defaults to true.
867        optional SettingProto short_code_confirmation = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
868        optional SettingProto short_code_rule = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
869        optional SettingProto short_codes_update_content_url = 5;
870        optional SettingProto short_codes_update_metadata_url = 6;
871        optional SettingProto access_restriction_enabled = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
872    }
873    optional Sms sms = 109;
874
875    message Sounds {
876        option (android.msg_privacy).dest = DEST_EXPLICIT;
877
878        optional SettingProto car_dock = 1;
879        optional SettingProto car_undock = 2;
880        reserved 3; // Moved to secure settings Sound.charging_sounds_enabled
881        optional SettingProto charging_started = 4;
882        optional SettingProto desk_dock = 5;
883        optional SettingProto desk_undock = 6;
884        optional SettingProto dock_sounds_enabled = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
885        optional SettingProto dock_sounds_enabled_when_accessibility = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
886        optional SettingProto lock = 9;
887        optional SettingProto low_battery = 10;
888        optional SettingProto low_battery_sound_timeout = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
889        // Called "power_sounds_enabled" in code.
890        optional SettingProto low_battery_sounds_enabled = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
891        optional SettingProto trusted = 13;
892        optional SettingProto unlock = 14;
893        optional SettingProto wireless_charging_started = 15;
894    }
895    optional Sounds sounds = 110;
896
897    message SoundTrigger {
898        option (android.msg_privacy).dest = DEST_EXPLICIT;
899
900        // Maximum number of SoundTriggerDetectionService operations per day.
901        optional SettingProto max_sound_trigger_detection_service_ops_per_day = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
902        // Timeout for a single SoundTriggerDetectionService operation (in ms).
903        optional SettingProto detection_service_op_timeout_ms = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
904    }
905    optional SoundTrigger sound_trigger = 111;
906
907    // Value to specify how long in milliseconds to retain seen score cache
908    // curves to be used when generating SSID only bases score curves.
909    optional SettingProto speed_label_cache_eviction_age_ms = 112 [ (android.privacy).dest = DEST_AUTOMATIC ];
910    // Configuration flags for SQLite Compatibility WAL. Encoded as a key-value
911    // list, separated by commas.
912    // E.g.: compatibility_wal_supported=true, wal_syncmode=OFF
913    optional SettingProto sqlite_compatibility_wal_flags = 113 [ (android.privacy).dest = DEST_AUTOMATIC ];
914    optional SettingProto stay_on_while_plugged_in = 114 [ (android.privacy).dest = DEST_AUTOMATIC ];
915
916    message Storage {
917        option (android.msg_privacy).dest = DEST_EXPLICIT;
918
919        optional SettingProto benchmark_interval = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
920        optional SettingProto settings_clobber_threshold = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
921    }
922    optional Storage storage = 115;
923
924    message Sync {
925        option (android.msg_privacy).dest = DEST_EXPLICIT;
926
927        // The maximum reconnect delay for short network outages or when the network is suspended due to phone use.
928        optional SettingProto max_retry_delay_in_seconds = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
929        // Simply "sync_manager_constants" in code.
930        optional SettingProto manager_constants = 2;
931    }
932    optional Sync sync = 116;
933
934    message Sys {
935        option (android.msg_privacy).dest = DEST_EXPLICIT;
936
937        // The interval in minutes after which the amount of free storage left on
938        // the device is logged to the event log.
939        optional SettingProto free_storage_log_interval_mins = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
940        optional SettingProto storage_threshold_percentage = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
941        optional SettingProto storage_threshold_max_bytes = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
942        optional SettingProto storage_full_threshold_bytes = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
943        optional SettingProto storage_cache_percentage = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
944        optional SettingProto storage_cache_max_bytes = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
945        // Used to be sys_vdso
946        reserved 7;
947        // UidCpuPower global setting. This links the sys.uidcpupower system property.
948        // The following values are supported:
949        // 0 -> /proc/uid_cpupower/* are disabled
950        // 1 -> /proc/uid_cpupower/* are enabled
951        // Any other value defaults to enabled.
952        optional SettingProto uidcpupower = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
953    }
954    optional Sys sys = 117;
955
956    optional SettingProto tcp_default_init_rwnd = 118 [ (android.privacy).dest = DEST_AUTOMATIC ];
957
958    message TemperatureWarning {
959        option (android.msg_privacy).dest = DEST_EXPLICIT;
960
961        optional SettingProto show_temperature_warning = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
962        // Temperature at which the high temperature warning notification should
963        // be shown.
964        optional SettingProto warning_temperature_level = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
965        optional SettingProto show_usb_temperature_alarm = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
966    }
967    optional TemperatureWarning temperature_warning = 119;
968
969    message Tether {
970        option (android.msg_privacy).dest = DEST_EXPLICIT;
971
972        optional SettingProto supported = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
973        optional SettingProto dun_required = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
974        optional SettingProto dun_apn = 3;
975        optional SettingProto offload_disabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
976        // Simply "soft_ap_timeout_enabled" in code.
977        optional SettingProto timeout_enabled = 112 [ (android.privacy).dest = DEST_AUTOMATIC ];
978    }
979    optional Tether tether = 120;
980
981    optional SettingProto text_classifier_constants = 121;
982    optional SettingProto theater_mode_on = 122 [ (android.privacy).dest = DEST_AUTOMATIC ];
983    optional SettingProto time_only_mode_constants = 123 [ (android.privacy).dest = DEST_AUTOMATIC ];
984    optional SettingProto transition_animation_scale = 124 [ (android.privacy).dest = DEST_AUTOMATIC ];
985
986    message Tzinfo {
987        option (android.msg_privacy).dest = DEST_EXPLICIT;
988
989        optional SettingProto update_content_url = 1;
990        optional SettingProto update_metadata_url = 2;
991    }
992    optional Tzinfo tzinfo = 125;
993
994    // The min period for caching unused static shared libs in milliseconds.
995    optional SettingProto unused_static_shared_lib_min_cache_period_ms = 126 [ (android.privacy).dest = DEST_AUTOMATIC ];
996    optional SettingProto usb_mass_storage_enabled = 127 [ (android.privacy).dest = DEST_AUTOMATIC ];
997    optional SettingProto use_google_mail = 128 [ (android.privacy).dest = DEST_AUTOMATIC ];
998    optional SettingProto use_open_wifi_package = 129 [ (android.privacy).dest = DEST_AUTOMATIC ];
999    optional SettingProto uwb_enabled = 155 [ (android.privacy).dest = DEST_AUTOMATIC ];
1000    optional SettingProto vt_ims_enabled = 130 [ (android.privacy).dest = DEST_AUTOMATIC ];
1001    optional SettingProto wait_for_debugger = 131 [ (android.privacy).dest = DEST_AUTOMATIC ];
1002
1003    message Webview {
1004        option (android.msg_privacy).dest = DEST_EXPLICIT;
1005
1006        optional SettingProto data_reduction_proxy_key = 1;
1007        optional SettingProto fallback_logic_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
1008        // Name of the package used as WebView provider.
1009        optional SettingProto provider = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
1010        optional SettingProto multiprocess = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
1011    }
1012    optional Webview webview = 132;
1013
1014    message Wfc {
1015        option (android.msg_privacy).dest = DEST_EXPLICIT;
1016
1017        optional SettingProto ims_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
1018        optional SettingProto ims_mode = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
1019        optional SettingProto ims_roaming_mode = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
1020        optional SettingProto ims_roaming_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
1021    }
1022    optional Wfc wfc = 133;
1023
1024    message Wifi {
1025        option (android.msg_privacy).dest = DEST_EXPLICIT;
1026
1027        optional SettingProto sleep_policy = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
1028        optional SettingProto badging_thresholds = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
1029        optional SettingProto display_on = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
1030        optional SettingProto display_certification_on = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
1031        optional SettingProto display_wps_config = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
1032        optional SettingProto networks_available_notification_on = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
1033        reserved 7; reserved "carrier_networks_available_notification_on";
1034        optional SettingProto networks_available_repeat_delay = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
1035        optional SettingProto country_code = 9;
1036        optional SettingProto framework_scan_interval_ms = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
1037        optional SettingProto idle_ms = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
1038        optional SettingProto num_open_networks_kept = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
1039        optional SettingProto on = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
1040        optional SettingProto scan_always_available = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
1041        optional SettingProto wakeup_enabled = 15 [ (android.privacy).dest = DEST_AUTOMATIC ];
1042        optional SettingProto saved_state = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
1043        optional SettingProto supplicant_scan_interval_ms = 17 [ (android.privacy).dest = DEST_AUTOMATIC ];
1044        optional SettingProto enhanced_auto_join = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
1045        optional SettingProto network_show_rssi = 19 [ (android.privacy).dest = DEST_AUTOMATIC ];
1046        optional SettingProto scan_interval_when_p2p_connected_ms = 20 [ (android.privacy).dest = DEST_AUTOMATIC ];
1047        optional SettingProto watchdog_on = 21 [ (android.privacy).dest = DEST_AUTOMATIC ];
1048        optional SettingProto watchdog_poor_network_test_enabled = 22 [ (android.privacy).dest = DEST_AUTOMATIC ];
1049        optional SettingProto suspend_optimizations_enabled = 23 [ (android.privacy).dest = DEST_AUTOMATIC ];
1050        optional SettingProto verbose_logging_enabled = 24 [ (android.privacy).dest = DEST_AUTOMATIC ];
1051        reserved 25; reserved "connected_mac_randomization_enabled";
1052        optional SettingProto max_dhcp_retry_count = 26 [ (android.privacy).dest = DEST_AUTOMATIC ];
1053        optional SettingProto mobile_data_transition_wakelock_timeout_ms = 27 [ (android.privacy).dest = DEST_AUTOMATIC ];
1054        // Controls whether WiFi configurations created by a Device Owner app should
1055        // be locked down (that is, be editable or removable only by the Device
1056        // Owner App, not even by Settings app). This setting takes integer values.
1057        // Non-zero values mean that the Device Owner-created configurations are
1058        // locked down. Value of zero means they are not. Default value in the
1059        // absence of actual value to this setting is 0.
1060        optional SettingProto device_owner_configs_lockdown = 28 [ (android.privacy).dest = DEST_AUTOMATIC ];
1061        optional SettingProto frequency_band = 29 [ (android.privacy).dest = DEST_AUTOMATIC ];
1062        optional SettingProto p2p_device_name = 30;
1063        reserved 31; reserved "reenable_delay_ms";
1064        optional SettingProto ephemeral_out_of_range_timeout_ms = 32 [ (android.privacy).dest = DEST_AUTOMATIC ];
1065        optional SettingProto on_when_proxy_disconnected = 33 [ (android.privacy).dest = DEST_AUTOMATIC ];
1066        optional SettingProto bounce_delay_override_ms = 34 [ (android.privacy).dest = DEST_AUTOMATIC ];
1067    }
1068    optional Wifi wifi = 134;
1069
1070    optional SettingProto wimax_networks_available_notification_on = 135 [ (android.privacy).dest = DEST_AUTOMATIC ];
1071    optional SettingProto window_animation_scale = 136 [ (android.privacy).dest = DEST_AUTOMATIC ];
1072    optional SettingProto wtf_is_fatal = 137 [ (android.privacy).dest = DEST_AUTOMATIC ];
1073
1074    message Zen {
1075        option (android.msg_privacy).dest = DEST_EXPLICIT;
1076
1077        optional SettingProto mode = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
1078        optional SettingProto mode_ringer_level = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
1079        optional SettingProto mode_config_etag = 3;
1080        reserved 4; // Moved to secure settings Zen.duration
1081        reserved 5; // Moved to secure settings Zen.show_zen_upgrade_notification
1082    }
1083    optional Zen zen = 138;
1084
1085    optional SettingProto zram_enabled = 139 [ (android.privacy).dest = DEST_AUTOMATIC ];
1086
1087    optional SettingProto app_ops_constants = 148 [ (android.privacy).dest = DEST_AUTOMATIC ];
1088
1089    optional SettingProto text_classifier_action_model_params = 145 [ (android.privacy).dest = DEST_AUTOMATIC ];
1090
1091    // Please insert fields in alphabetical order and group them into messages
1092    // if possible (to avoid reaching the method limit).
1093    // Next tag = 161;
1094}
1095