1 /*
2  * Copyright (C) 2019 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.provider.settings.backup;
18 
19 import android.compat.annotation.UnsupportedAppUsage;
20 import android.provider.Settings;
21 
22 /** Information relating to the Secure settings which should be backed up */
23 public class SecureSettings {
24 
25     /**
26      * NOTE: Settings are backed up and restored in the order they appear
27      *       in this array. If you have one setting depending on another,
28      *       make sure that they are ordered appropriately.
29      */
30     @UnsupportedAppUsage
31     public static final String[] SETTINGS_TO_BACKUP = {
32         Settings.Secure.BUGREPORT_IN_POWER_MENU,
33         Settings.Secure.ALLOW_MOCK_LOCATION,
34         Settings.Secure.USB_MASS_STORAGE_ENABLED,                           // moved to global
35         Settings.Secure.ACCESSIBILITY_DISPLAY_INVERSION_ENABLED,
36         Settings.Secure.ACCESSIBILITY_DISPLAY_DALTONIZER,
37         Settings.Secure.ACCESSIBILITY_DISPLAY_DALTONIZER_ENABLED,
38         Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_ENABLED,
39         Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED,
40         Settings.Secure.ADAPTIVE_CHARGING_ENABLED,
41         Settings.Secure.ADAPTIVE_SLEEP,
42         Settings.Secure.CAMERA_AUTOROTATE,
43         Settings.Secure.AUTOFILL_SERVICE,
44         Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_SCALE,
45         Settings.Secure.ENABLED_ACCESSIBILITY_SERVICES,
46         Settings.Secure.ENABLED_ACCESSIBILITY_AUDIO_DESCRIPTION_BY_DEFAULT,
47         Settings.Secure.ENABLED_VR_LISTENERS,
48         Settings.Secure.TOUCH_EXPLORATION_GRANTED_ACCESSIBILITY_SERVICES,
49         Settings.Secure.TOUCH_EXPLORATION_ENABLED,
50         Settings.Secure.ACCESSIBILITY_ENABLED,
51         Settings.Secure.ACCESSIBILITY_SHORTCUT_TARGET_SERVICE,
52         Settings.Secure.ACCESSIBILITY_BUTTON_TARGET_COMPONENT,
53         Settings.Secure.ACCESSIBILITY_SHORTCUT_DIALOG_SHOWN,
54         Settings.Secure.ACCESSIBILITY_SHORTCUT_ON_LOCK_SCREEN,
55         Settings.Secure.ACCESSIBILITY_HIGH_TEXT_CONTRAST_ENABLED,
56         Settings.Secure.CONTRAST_LEVEL,
57         Settings.Secure.ACCESSIBILITY_CAPTIONING_PRESET,
58         Settings.Secure.ACCESSIBILITY_CAPTIONING_ENABLED,
59         Settings.Secure.ACCESSIBILITY_CAPTIONING_LOCALE,
60         Settings.Secure.ACCESSIBILITY_CAPTIONING_BACKGROUND_COLOR,
61         Settings.Secure.ACCESSIBILITY_CAPTIONING_FOREGROUND_COLOR,
62         Settings.Secure.ACCESSIBILITY_CAPTIONING_EDGE_TYPE,
63         Settings.Secure.ACCESSIBILITY_CAPTIONING_EDGE_COLOR,
64         Settings.Secure.ACCESSIBILITY_CAPTIONING_TYPEFACE,
65         Settings.Secure.ACCESSIBILITY_CAPTIONING_FONT_SCALE,
66         Settings.Secure.ACCESSIBILITY_CAPTIONING_WINDOW_COLOR,
67         Settings.Secure.FONT_WEIGHT_ADJUSTMENT,
68         Settings.Secure.REDUCE_BRIGHT_COLORS_LEVEL,
69         Settings.Secure.REDUCE_BRIGHT_COLORS_PERSIST_ACROSS_REBOOTS,
70         Settings.Secure.TTS_DEFAULT_RATE,
71         Settings.Secure.TTS_DEFAULT_PITCH,
72         Settings.Secure.TTS_DEFAULT_SYNTH,
73         Settings.Secure.TTS_ENABLED_PLUGINS,
74         Settings.Secure.TTS_DEFAULT_LOCALE,
75         Settings.Secure.SHOW_IME_WITH_HARD_KEYBOARD,
76         Settings.Secure.ACCESSIBILITY_BOUNCE_KEYS,
77         Settings.Secure.ACCESSIBILITY_SLOW_KEYS,
78         Settings.Secure.ACCESSIBILITY_STICKY_KEYS,
79         Settings.Secure.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON,            // moved to global
80         Settings.Secure.WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY,               // moved to global
81         Settings.Secure.WIFI_NUM_OPEN_NETWORKS_KEPT,                        // moved to global
82         Settings.Secure.MOUNT_PLAY_NOTIFICATION_SND,
83         Settings.Secure.MOUNT_UMS_AUTOSTART,
84         Settings.Secure.MOUNT_UMS_PROMPT,
85         Settings.Secure.MOUNT_UMS_NOTIFY_ENABLED,
86         Settings.Secure.DOUBLE_TAP_TO_WAKE,
87         Settings.Secure.WAKE_GESTURE_ENABLED,
88         Settings.Secure.LONG_PRESS_TIMEOUT,
89         Settings.Secure.KEY_REPEAT_TIMEOUT_MS,
90         Settings.Secure.KEY_REPEAT_DELAY_MS,
91         Settings.Secure.CAMERA_GESTURE_DISABLED,
92         Settings.Secure.ACCESSIBILITY_AUTOCLICK_ENABLED,
93         Settings.Secure.ACCESSIBILITY_AUTOCLICK_DELAY,
94         Settings.Secure.ACCESSIBILITY_LARGE_POINTER_ICON,
95         Settings.Secure.PREFERRED_TTY_MODE,
96         Settings.Secure.ENHANCED_VOICE_PRIVACY_ENABLED,
97         Settings.Secure.TTY_MODE_ENABLED,
98         Settings.Secure.RTT_CALLING_MODE,
99         Settings.Secure.INCALL_POWER_BUTTON_BEHAVIOR,
100         Settings.Secure.MINIMAL_POST_PROCESSING_ALLOWED,
101         Settings.Secure.MATCH_CONTENT_FRAME_RATE,
102         Settings.Secure.NIGHT_DISPLAY_CUSTOM_START_TIME,
103         Settings.Secure.NIGHT_DISPLAY_CUSTOM_END_TIME,
104         Settings.Secure.NIGHT_DISPLAY_COLOR_TEMPERATURE,
105         Settings.Secure.NIGHT_DISPLAY_AUTO_MODE,
106         Settings.Secure.DISPLAY_WHITE_BALANCE_ENABLED,
107         Settings.Secure.SYNC_PARENT_SOUNDS,
108         Settings.Secure.CAMERA_DOUBLE_TWIST_TO_FLIP_ENABLED,
109         Settings.Secure.CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED,
110         Settings.Secure.SYSTEM_NAVIGATION_KEYS_ENABLED,
111         // ACCESSIBILITY_QS_TARGETS needs to be restored after ENABLED_ACCESSIBILITY_SERVICES
112         // but before QS_TILES
113         Settings.Secure.ACCESSIBILITY_QS_TARGETS,
114         Settings.Secure.QS_TILES,
115         Settings.Secure.QS_AUTO_ADDED_TILES,
116         Settings.Secure.CONTROLS_ENABLED,
117         Settings.Secure.POWER_MENU_LOCKED_SHOW_CONTENT,
118         Settings.Secure.DOZE_ENABLED,
119         Settings.Secure.DOZE_ALWAYS_ON,
120         Settings.Secure.DOZE_PICK_UP_GESTURE,
121         Settings.Secure.DOZE_DOUBLE_TAP_GESTURE,
122         Settings.Secure.DOZE_TAP_SCREEN_GESTURE,
123         Settings.Secure.NFC_PAYMENT_DEFAULT_COMPONENT,
124         Settings.Secure.AUTOMATIC_STORAGE_MANAGER_DAYS_TO_RETAIN,
125         Settings.Secure.FACE_UNLOCK_KEYGUARD_ENABLED,
126         Settings.Secure.SHOW_MEDIA_WHEN_BYPASSING,
127         Settings.Secure.FACE_UNLOCK_DISMISSES_KEYGUARD,
128         Settings.Secure.FACE_UNLOCK_APP_ENABLED,
129         Settings.Secure.FACE_UNLOCK_ALWAYS_REQUIRE_CONFIRMATION,
130         Settings.Secure.FINGERPRINT_SIDE_FPS_KG_POWER_WINDOW,
131         Settings.Secure.FINGERPRINT_SIDE_FPS_BP_POWER_WINDOW,
132         Settings.Secure.FINGERPRINT_SIDE_FPS_ENROLL_TAP_WINDOW,
133         Settings.Secure.FINGERPRINT_SIDE_FPS_AUTH_DOWNTIME,
134         Settings.Secure.SFPS_PERFORMANT_AUTH_ENABLED,
135         Settings.Secure.ACTIVE_UNLOCK_ON_WAKE,
136         Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT,
137         Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_LEGACY,
138         Settings.Secure.ACTIVE_UNLOCK_ON_BIOMETRIC_FAIL,
139         Settings.Secure.ACTIVE_UNLOCK_ON_FACE_ERRORS,
140         Settings.Secure.ACTIVE_UNLOCK_ON_FACE_ACQUIRE_INFO,
141         Settings.Secure.ACTIVE_UNLOCK_ON_UNLOCK_INTENT_WHEN_BIOMETRIC_ENROLLED,
142         Settings.Secure.ACTIVE_UNLOCK_WAKEUPS_CONSIDERED_UNLOCK_INTENTS,
143         Settings.Secure.ACTIVE_UNLOCK_WAKEUPS_TO_FORCE_DISMISS_KEYGUARD,
144         Settings.Secure.VR_DISPLAY_MODE,
145         Settings.Secure.NOTIFICATION_BADGING,
146         Settings.Secure.NOTIFICATION_DISMISS_RTL,
147         Settings.Secure.SCREENSAVER_ENABLED,
148         Settings.Secure.SCREENSAVER_COMPONENTS,
149         Settings.Secure.SCREENSAVER_ACTIVATE_ON_DOCK,
150         Settings.Secure.SCREENSAVER_ACTIVATE_ON_SLEEP,
151         Settings.Secure.SCREENSAVER_HOME_CONTROLS_ENABLED,
152         Settings.Secure.SHOW_FIRST_CRASH_DIALOG_DEV_OPTION,
153         Settings.Secure.VOLUME_DIALOG_DISMISS_TIMEOUT,
154         Settings.Secure.VOLUME_HUSH_GESTURE,
155         Settings.Secure.MANUAL_RINGER_TOGGLE_COUNT,
156         Settings.Secure.LOW_POWER_WARNING_ACKNOWLEDGED,
157         Settings.Secure.EXTRA_LOW_POWER_WARNING_ACKNOWLEDGED,
158         Settings.Secure.EMERGENCY_THERMAL_ALERT_DISABLED,
159         Settings.Secure.HUSH_GESTURE_USED,
160         Settings.Secure.IN_CALL_NOTIFICATION_ENABLED,
161         Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS,
162         Settings.Secure.LOCK_SCREEN_CUSTOM_CLOCK_FACE,
163         Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS,
164         Settings.Secure.LOCK_SCREEN_SHOW_SILENT_NOTIFICATIONS,
165         Settings.Secure.LOCK_SCREEN_SHOW_ONLY_UNSEEN_NOTIFICATIONS,
166         Settings.Secure.SHOW_NOTIFICATION_SNOOZE,
167         Settings.Secure.NOTIFICATION_HISTORY_ENABLED,
168         Settings.Secure.ZEN_DURATION,
169         Settings.Secure.SHOW_ZEN_UPGRADE_NOTIFICATION,
170         Settings.Secure.SHOW_ZEN_SETTINGS_SUGGESTION,
171         Settings.Secure.ZEN_SETTINGS_UPDATED,
172         Settings.Secure.ZEN_SETTINGS_SUGGESTION_VIEWED,
173         Settings.Secure.CHARGING_SOUNDS_ENABLED,
174         Settings.Secure.CHARGING_VIBRATION_ENABLED,
175         Settings.Secure.ACCESSIBILITY_NON_INTERACTIVE_UI_TIMEOUT_MS,
176         Settings.Secure.ACCESSIBILITY_INTERACTIVE_UI_TIMEOUT_MS,
177         Settings.Secure.UI_NIGHT_MODE,
178         Settings.Secure.UI_NIGHT_MODE_CUSTOM_TYPE,
179         Settings.Secure.DARK_THEME_CUSTOM_START_TIME,
180         Settings.Secure.DARK_THEME_CUSTOM_END_TIME,
181         Settings.Secure.SKIP_DIRECTION,
182         Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES,
183         Settings.Secure.BACK_GESTURE_INSET_SCALE_LEFT,
184         Settings.Secure.BACK_GESTURE_INSET_SCALE_RIGHT,
185         Settings.Secure.NAVIGATION_MODE,
186         Settings.Secure.TRACKPAD_GESTURE_BACK_ENABLED,
187         Settings.Secure.TRACKPAD_GESTURE_HOME_ENABLED,
188         Settings.Secure.TRACKPAD_GESTURE_OVERVIEW_ENABLED,
189         Settings.Secure.TRACKPAD_GESTURE_NOTIFICATION_ENABLED,
190         Settings.Secure.TRACKPAD_GESTURE_QUICK_SWITCH_ENABLED,
191         Settings.Secure.SKIP_GESTURE_COUNT,
192         Settings.Secure.SKIP_TOUCH_COUNT,
193         Settings.Secure.SILENCE_ALARMS_GESTURE_COUNT,
194         Settings.Secure.SILENCE_CALL_GESTURE_COUNT,
195         Settings.Secure.SILENCE_TIMER_GESTURE_COUNT,
196         Settings.Secure.SILENCE_ALARMS_TOUCH_COUNT,
197         Settings.Secure.SILENCE_CALL_TOUCH_COUNT,
198         Settings.Secure.SILENCE_TIMER_TOUCH_COUNT,
199         Settings.Secure.DARK_MODE_DIALOG_SEEN,
200         Settings.Secure.GLOBAL_ACTIONS_PANEL_ENABLED,
201         Settings.Secure.AWARE_LOCK_ENABLED,
202         Settings.Secure.AWARE_TAP_PAUSE_GESTURE_COUNT,
203         Settings.Secure.AWARE_TAP_PAUSE_TOUCH_COUNT,
204         Settings.Secure.PEOPLE_STRIP,
205         Settings.Secure.MEDIA_CONTROLS_RESUME,
206         Settings.Secure.MEDIA_CONTROLS_RECOMMENDATION,
207         Settings.Secure.MEDIA_CONTROLS_LOCK_SCREEN,
208         Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE,
209         Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS,
210         Settings.Secure.ACCESSIBILITY_MAGNIFICATION_CAPABILITY,
211         Settings.Secure.ACCESSIBILITY_MAGNIFICATION_FOLLOW_TYPING_ENABLED,
212         Settings.Secure.ONE_HANDED_MODE_ACTIVATED,
213         Settings.Secure.ONE_HANDED_MODE_ENABLED,
214         Settings.Secure.ONE_HANDED_MODE_TIMEOUT,
215         Settings.Secure.TAPS_APP_TO_EXIT,
216         Settings.Secure.SWIPE_BOTTOM_TO_NOTIFICATION_ENABLED,
217         Settings.Secure.EMERGENCY_GESTURE_ENABLED,
218         Settings.Secure.EMERGENCY_GESTURE_SOUND_ENABLED,
219         Settings.Secure.ADAPTIVE_CONNECTIVITY_ENABLED,
220         Settings.Secure.ASSIST_HANDLES_LEARNING_TIME_ELAPSED_MILLIS,
221         Settings.Secure.ASSIST_HANDLES_LEARNING_EVENT_COUNT,
222         Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
223         Settings.Secure.ACCESSIBILITY_FLOATING_MENU_SIZE,
224         Settings.Secure.ACCESSIBILITY_FLOATING_MENU_ICON_TYPE,
225         Settings.Secure.ACCESSIBILITY_FLOATING_MENU_OPACITY,
226         Settings.Secure.ACCESSIBILITY_FLOATING_MENU_FADE_ENABLED,
227         Settings.Secure.ACCESSIBILITY_FORCE_INVERT_COLOR_ENABLED,
228         Settings.Secure.ACCESSIBILITY_MAGNIFICATION_ALWAYS_ON_ENABLED,
229         Settings.Secure.ACCESSIBILITY_MAGNIFICATION_JOYSTICK_ENABLED,
230         Settings.Secure.ACCESSIBILITY_MAGNIFICATION_TWO_FINGER_TRIPLE_TAP_ENABLED,
231         Settings.Secure.ACCESSIBILITY_PINCH_TO_ZOOM_ANYWHERE_ENABLED,
232         Settings.Secure.ACCESSIBILITY_SINGLE_FINGER_PANNING_ENABLED,
233         Settings.Secure.ODI_CAPTIONS_VOLUME_UI_ENABLED,
234         Settings.Secure.NOTIFICATION_BUBBLES,
235         Settings.Secure.LOCATION_TIME_ZONE_DETECTION_ENABLED,
236         Settings.Secure.LOCKSCREEN_SHOW_CONTROLS,
237         Settings.Secure.LOCKSCREEN_ALLOW_TRIVIAL_CONTROLS,
238         Settings.Secure.LOCKSCREEN_SHOW_WALLET,
239         Settings.Secure.LOCK_SCREEN_SHOW_QR_CODE_SCANNER,
240         Settings.Secure.LOCKSCREEN_USE_DOUBLE_LINE_CLOCK,
241         Settings.Secure.STATUS_BAR_SHOW_VIBRATE_ICON,
242         Settings.Secure.WEAR_TALKBACK_ENABLED,
243         Settings.Secure.HBM_SETTING_KEY,
244         Settings.Secure.ASSIST_TOUCH_GESTURE_ENABLED,
245         Settings.Secure.ASSIST_LONG_PRESS_HOME_ENABLED,
246         Settings.Secure.BLUETOOTH_LE_BROADCAST_PROGRAM_INFO,
247         Settings.Secure.BLUETOOTH_LE_BROADCAST_NAME,
248         Settings.Secure.BLUETOOTH_LE_BROADCAST_CODE,
249         Settings.Secure.BLUETOOTH_LE_BROADCAST_APP_SOURCE_NAME,
250         Settings.Secure.BLUETOOTH_LE_BROADCAST_IMPROVE_COMPATIBILITY,
251         Settings.Secure.BLUETOOTH_LE_BROADCAST_FALLBACK_ACTIVE_DEVICE_ADDRESS,
252         Settings.Secure.CUSTOM_BUGREPORT_HANDLER_APP,
253         Settings.Secure.CUSTOM_BUGREPORT_HANDLER_USER,
254         Settings.Secure.CONTEXTUAL_SCREEN_TIMEOUT_ENABLED,
255         Settings.Secure.LOCK_SCREEN_WEATHER_ENABLED,
256         Settings.Secure.HEARING_AID_RINGTONE_ROUTING,
257         Settings.Secure.HEARING_AID_CALL_ROUTING,
258         Settings.Secure.HEARING_AID_MEDIA_ROUTING,
259         Settings.Secure.HEARING_AID_NOTIFICATION_ROUTING,
260         Settings.Secure.ACCESSIBILITY_FONT_SCALING_HAS_BEEN_CHANGED,
261         Settings.Secure.SEARCH_ALL_ENTRYPOINTS_ENABLED,
262         Settings.Secure.HUB_MODE_TUTORIAL_STATE,
263         Settings.Secure.GLANCEABLE_HUB_ENABLED,
264         Settings.Secure.STYLUS_BUTTONS_ENABLED,
265         Settings.Secure.STYLUS_HANDWRITING_ENABLED,
266         Settings.Secure.DEFAULT_NOTE_TASK_PROFILE,
267         Settings.Secure.CREDENTIAL_SERVICE,
268         Settings.Secure.CREDENTIAL_SERVICE_PRIMARY,
269         Settings.Secure.EVEN_DIMMER_ACTIVATED,
270         Settings.Secure.EVEN_DIMMER_MIN_NITS,
271         Settings.Secure.STYLUS_POINTER_ICON_ENABLED,
272         Settings.Secure.CAMERA_EXTENSIONS_FALLBACK,
273         Settings.Secure.VISUAL_QUERY_ACCESSIBILITY_DETECTION_ENABLED,
274         Settings.Secure.IMMERSIVE_MODE_CONFIRMATIONS,
275         Settings.Secure.AUDIO_DEVICE_INVENTORY,
276         Settings.Secure.SCREEN_RESOLUTION_MODE,
277         Settings.Secure.ACCESSIBILITY_GESTURE_TARGETS,
278         Settings.Secure.ACCESSIBILITY_DISPLAY_DALTONIZER_SATURATION_LEVEL,
279         Settings.Secure.CHARGE_OPTIMIZATION_MODE,
280         Settings.Secure.ON_DEVICE_INTELLIGENCE_UNBIND_TIMEOUT_MS,
281         Settings.Secure.ON_DEVICE_INFERENCE_UNBIND_TIMEOUT_MS,
282         Settings.Secure.ON_DEVICE_INTELLIGENCE_IDLE_TIMEOUT_MS,
283     };
284 }
285