summaryrefslogtreecommitdiff
path: root/core/proto/android/providers/settings/secure.proto
blob: ef413b9b04cf24cc297f029b226ff17b2749b44f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
/*
 * Copyright (C) 2017 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.
 */

syntax = "proto2";
package android.providers.settings;

option java_multiple_files = true;

import "frameworks/base/core/proto/android/providers/settings/common.proto";
import "frameworks/base/core/proto/android/privacy.proto";

// Note: it's a conscious decision to add each setting as a separate field. This
// allows annotating each setting with its own privacy tag.
message SecureSettingsProto {
    option (android.msg_privacy).dest = DEST_EXPLICIT;

    repeated SettingsOperationProto historical_operations = 1;

    message Accessibility {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // List of the enabled accessibility providers.
        optional SettingProto enabled_accessibility_services = 2;
        optional SettingProto autoclick_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto autoclick_delay = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // Setting specifying the accessibility service or feature to be toggled via
        // the accessibility button in the navigation bar. This is either a
        // flattened ComponentName or the class name of a system class implementing
        // a supported accessibility feature.
        optional SettingProto button_target_component = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_enabled = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_locale = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_preset = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_background_color = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_foreground_color = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_edge_type = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_edge_color = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_window_color = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_typeface = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto captioning_font_scale = 15 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto display_daltonizer_enabled = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // Integer property that specifies the type of color space adjustment to perform.
        optional SettingProto display_daltonizer = 17 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto display_inversion_enabled = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto display_magnification_enabled = 19 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto display_magnification_navbar_enabled = 20 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto display_magnification_scale = 21 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto high_text_contrast_enabled = 22 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto large_pointer_icon = 23 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto shortcut_enabled = 24 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto shortcut_on_lock_screen = 25 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto shortcut_dialog_shown = 26 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto shortcut_target_service = 27 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto soft_keyboard_mode = 28 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // Whether to speak passwords while in accessibility mode.
        optional SettingProto speak_password = 29 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto touch_exploration_enabled = 30 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // List of the accessibility services to which the user has granted
        // permission to put the device into touch exploration mode.
        optional SettingProto touch_exploration_granted_accessibility_services = 31;
        // Settings for accessibility timeout
        optional SettingProto non_interactive_ui_timeout_ms = 32 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto interactive_ui_timeout_ms = 33 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Accessibility accessibility = 2;

    // Origins for which browsers should allow geolocation by default.
    // The value is a space-separated list of origins.
    optional SettingProto allowed_geolocation_origins = 3;

    message AlwaysOnVpn {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto app = 1;
        optional SettingProto lockdown = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional AlwaysOnVpn always_on_vpn = 4;

    optional SettingProto android_id = 5;
    optional SettingProto anr_show_background = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Assist {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // The current assistant component. It could be a voice interaction service,
        // or an activity that handles ACTION_ASSIST, or empty, which means using
        // the default handling.
        optional SettingProto assistant = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto structure_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto screenshot_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto disclosure_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto gesture_enabled = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto gesture_sensitivity = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto gesture_silence_alerts_enabled = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto gesture_wake_enabled = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto gesture_setup_complete = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Assist assist = 7;

    message Autofill {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // The currently selected autofill service flattened ComponentName.
        optional SettingProto service = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // Boolean indicating if Autofill supports field classification.
        optional SettingProto feature_field_classification = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto user_data_max_user_data_size = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto user_data_max_field_classification_ids_size = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto user_data_max_category_count = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto user_data_max_value_length = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto user_data_min_value_length = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // The query URI to find an auto fill service to install.
        optional SettingProto service_search_uri = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Autofill autofill = 8;

    message AutomaticStorageManager {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto days_to_retain = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto bytes_cleared = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto last_run = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto turned_off_by_policy = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional AutomaticStorageManager automatic_storage_manager = 9;

    message Backup {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto auto_restore = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto provisioned = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto transport = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto manager_constants = 5;
        // Local transport parameters so we can configure it for tests.
        // This is encoded as a key=value list, separated by commas.
        // The following keys are supported:
        //   fake_encryption_flag  (boolean)
        optional SettingProto local_transport_parameters = 6;
        optional SettingProto packages_to_clear_data_before_full_restore = 7;
    }
    optional Backup backup = 10;

    optional SettingProto bluetooth_on_while_driving = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Camera {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto gesture_disabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto double_tap_power_gesture_disabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto double_twist_to_flip_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto lift_trigger_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Camera camera = 12;

    optional SettingProto carrier_apps_handled = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto cmas_additional_broadcast_pkg = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
    repeated SettingProto completed_categories = 15;
    optional SettingProto connectivity_release_pending_intent_delay_ms = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto device_paired = 17 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto dialer_default_application = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto display_density_forced = 19 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto double_tap_to_wake = 20 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Doze {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto always_on = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto pulse_on_pick_up = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto pulse_on_long_press = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto pulse_on_double_tap = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto pulse_on_tap = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Doze doze = 21;

    optional SettingProto emergency_assistance_application = 22 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto enhanced_voice_privacy_enabled = 23 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Gesture {
        optional SettingProto aware_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];

        optional SettingProto silence_alarms_count = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto silence_calls_count = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto silence_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // del: silence_notification_count = 5
        optional SettingProto silence_timer_count = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];

        optional SettingProto skip_count = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto skip_enabled = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];

        optional SettingProto silence_alarms_touch_count = 9 [ (android.privacy).dest =
            DEST_AUTOMATIC ];
        optional SettingProto silence_calls_touch_count = 10 [ (android.privacy).dest =
            DEST_AUTOMATIC ];
        optional SettingProto silence_timer_touch_count = 11 [ (android.privacy).dest =
            DEST_AUTOMATIC ];
        optional SettingProto skip_touch_count = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto aware_tap_pause_gesture_count = 13 [
            (android.privacy).dest =
            DEST_AUTOMATIC ];
        optional SettingProto aware_tap_pause_touch_count = 14 [ (android.privacy).dest =
            DEST_AUTOMATIC ];
    }
    optional Gesture gesture = 74;

    optional SettingProto immersive_mode_confirmations = 24 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Incall {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto power_button_behavior = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto back_button_behavior = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Incall incall = 25;

    message InputMethods {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto default_input_method = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto disabled_system_input_methods = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto enabled_input_methods = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto method_selector_visibility = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto subtype_history = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto selected_input_method_subtype = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto show_ime_with_hard_keyboard = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional InputMethods input_methods = 26;

    optional SettingProto install_non_market_apps = 27 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto instant_apps_enabled = 28 [ (android.privacy).dest = DEST_AUTOMATIC ];
    // Uri of the slice that's presented on the keyguard. Defaults to a slice
    // with the date and next alarm.
    optional SettingProto keyguard_slice_uri = 29;
    optional SettingProto last_setup_shown = 30 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Launcher {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto swipe_up_to_switch_apps_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Launcher launcher = 70;

    message Location {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // The degree of location access enabled by the user.
        optional SettingProto mode = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // The App or module that changes the location mode.
        optional SettingProto changer = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];

        // What should happen to the location permissions when upgraded to Android Q.
        // 0 == revoke permissions. Anything else == do nothing.
        optional SettingProto permissions_upgrade_to_q_mode = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Location location = 31;

    // How frequently will the user be reminded about location permission grants
    message LocationAccessCheck {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // Time in between periodic checks
        optional SettingProto interval_millis = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];

        // Time in between the user granting a location permission and a check
        optional SettingProto delay_millis = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional LocationAccessCheck location_access_check = 73;

    message LockScreen {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto lock_after_timeout = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto allow_private_notifications = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto allow_remote_input = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto show_notifications = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional LockScreen lock_screen = 32;

    // Whether lock-to-app will lock the keyguard when exiting.
    optional SettingProto lock_to_app_exit_locked = 33 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto lockdown_in_power_menu = 34 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto long_press_timeout = 35 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message ManagedProfile {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto contact_remote_search = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional ManagedProfile managed_profile = 36;

    message Mount {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // Whether or not alert sounds are played on StorageManagerService events.
        optional SettingProto play_notification_snd = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto ums_autostart = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto ums_prompt = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto ums_notify_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Mount mount = 37;

    optional SettingProto multi_press_timeout = 38 [ (android.privacy).dest = DEST_AUTOMATIC ];

    optional SettingProto navigation_mode = 76 [ (android.privacy).dest = DEST_AUTOMATIC ];
    message NfcPayment {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto default_component = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // Whether NFC payment is handled by the foreground application or a default.
        optional SettingProto foreground = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // The query URI to find an NFC service to install.
        optional SettingProto payment_service_search_uri = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional NfcPayment nfc_payment = 39;

    message NightDisplay {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto activated = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto auto_mode = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto color_temperature = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto custom_start_time = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto custom_end_time = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto last_activated_time = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional NightDisplay night_display = 40;

    message Notification {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // Read only list of the service components that the current user has
        // explicitly allowed to see and assist with all of the user's
        // notifications.
        // "enabled_notification_assistant" in code.
        optional SettingProto enabled_assistant = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto enabled_listeners = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto enabled_policy_access_packages = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto badging = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto show_note_about_notification_hiding = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto in_call_notification_enabled = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto bubbles = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Notification notification = 41;

    message PackageVerifier {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto user_consent = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto state = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional PackageVerifier package_verifier = 42;

    message ParentalControl {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto last_update = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto redirect_url = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional ParentalControl parental_control = 43;

    message PrintService {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // The query URI to find a print service to install.
        optional SettingProto search_uri = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto disabled_print_services = 2;
        optional SettingProto enabled_print_services = 3;
    }
    optional PrintService print_service = 44;

    message QuickSettings {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // Holds comma-separated list of ordering of QuickSettings tiles.
        optional SettingProto tiles = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto auto_added_tiles = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional QuickSettings qs = 45;

    message Rotation {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto show_rotation_suggestions = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto num_rotation_suggestions_accepted = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Rotation rotation = 46;

    // User-selected RTT mode. When on, outgoing and incoming calls will be
    // answered as RTT calls when supported by the device and carrier. Boolean
    // value.
    optional SettingProto rtt_calling_mode = 69 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Screensaver {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto components = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto activate_on_dock = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto activate_on_sleep = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto default_component = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Screensaver screensaver = 47;

    message Search {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto global_search_activity = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto num_promoted_sources = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto max_results_to_display = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto max_results_per_source = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto web_results_override_limit = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto promoted_source_deadline_millis = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto source_timeout_millis = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto prefill_millis = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto max_stat_age_millis = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto max_source_event_age_millis = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto min_impressions_for_source_ranking = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto min_clicks_for_source_ranking = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto max_shortcuts_returned = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto query_thread_core_pool_size = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto query_thread_max_pool_size = 15 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto shortcut_refresh_core_pool_size = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto shortcut_refresh_max_pool_size = 17 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto thread_keepalive_seconds = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto per_source_concurrent_query_limit = 19 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Search search = 48;

    message SpellChecker {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // "selected_spell_checker" in code.
        optional SettingProto selected = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // "selected_spell_checker_subtype" in code.
        optional SettingProto selected_subtype = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional SpellChecker spell_checker = 49;

    optional SettingProto settings_classname = 50 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto show_first_crash_dialog_dev_option = 51 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto skip_first_use_hints = 52 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto sleep_timeout = 53 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto sms_default_application = 54 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Sounds {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto charging_sounds_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto charging_vibration_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Sounds sounds = 72;

    // Defines whether managed profile ringtones should be synced from its
    // parent profile.
    optional SettingProto sync_parent_sounds = 55 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto system_navigation_keys_enabled = 56 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto theme_customization_overlay_packages = 75 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto trust_agents_initialized = 57 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Tts {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto default_rate = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto default_pitch = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto default_synth = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto default_locale = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto enabled_plugins = 5;
    }
    optional Tts tts = 58;

    message Tty {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto tty_mode_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // The preferred TTY mode:
        // 0 = TTy Off, CDMA default
        // 1 = TTY Full
        // 2 = TTY HCO
        // 3 = TTY VCO
        optional SettingProto preferred_tty_mode = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Tty tty = 59;

    message Tv {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // Whether the current user has been set up via setup wizard (0 = false,
        // 1 = true). This value differs from USER_SETUP_COMPLETE in that it can be
        // reset back to 0 in case SetupWizard has been re-enabled on TV devices.
        optional SettingProto user_setup_complete = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto input_hidden_inputs = 2;
        optional SettingProto input_custom_labels = 3;
    }
    optional Tv tv = 60;

    optional SettingProto ui_night_mode = 61 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto unknown_sources_default_reversed = 62 [ (android.privacy).dest = DEST_AUTOMATIC ];
    optional SettingProto usb_audio_automatic_routing_disabled = 63 [ (android.privacy).dest = DEST_AUTOMATIC ];
    // Whether the current user has been set up via setup wizard (0 = false, 1 = true)
    optional SettingProto user_setup_complete = 64 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Voice {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // The currently selected voice interaction service flattened ComponentName.
        optional SettingProto interaction_service = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // The ComponentName string of the service to be used as the voice
        // recognition service.
        optional SettingProto recognition_service = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Voice voice = 65;

    message Volume {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // What behavior should be invoked when the volume hush gesture is triggered
        // One of VOLUME_HUSH_OFF, VOLUME_HUSH_VIBRATE, VOLUME_HUSH_MUTE.
        optional SettingProto hush_gesture = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        // Persisted playback time after a user confirmation of an unsafe volume level.
        optional SettingProto unsafe_volume_music_active_ms = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Volume volume = 66;

    message Vr {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        optional SettingProto display_mode = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto enabled_listeners = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Vr vr = 67;

    optional SettingProto wake_gesture_enabled = 68 [ (android.privacy).dest = DEST_AUTOMATIC ];

    message Zen {
        option (android.msg_privacy).dest = DEST_EXPLICIT;

        // If 0, turning on dnd manually will last indefinitely. Else if
        // non-negative, turning on dnd manually will last for this many minutes.
        // Else (if negative), turning on dnd manually will surface a dialog that
        // prompts user to specify a duration.
        optional SettingProto duration = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto show_zen_upgrade_notification = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto show_zen_settings_suggestion = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto settings_updated = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
        optional SettingProto settings_suggestion_viewed = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    }
    optional Zen zen = 71;

    // Please insert fields in alphabetical order and group them into messages
    // if possible (to avoid reaching the method limit).
    // Next tag = 77;
}