• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2022 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.app.admin;
18 
19 import android.annotation.SystemApi;
20 import android.os.UserHandle;
21 
22 /**
23  * Class containing the required identifiers to update device management resources.
24  *
25  * <p>See {@link DevicePolicyResourcesManager#getDrawable} and
26  * {@link DevicePolicyResourcesManager#getString}.
27  */
28 public final class DevicePolicyResources {
29 
DevicePolicyResources()30     private DevicePolicyResources() {}
31 
32     /**
33      * An identifier used for:
34      * <ul>
35      *     <li>un-updatable resource IDs</li>
36      *     <li>undefined sources</li>
37      * </ul>
38      */
39     public static final String UNDEFINED = "UNDEFINED";
40 
41     /**
42      * Class containing the identifiers used to update device management-related system drawable.
43      *
44      * @hide
45      */
46     public static final class Drawables {
47 
Drawables()48         private Drawables() {
49         }
50 
51         /**
52          * Specifically used to badge work profile app icons.
53          */
54         public static final String WORK_PROFILE_ICON_BADGE = "WORK_PROFILE_ICON_BADGE";
55 
56         /**
57          * General purpose work profile icon (i.e. generic icon badging). For badging app icons
58          * specifically, see {@link #WORK_PROFILE_ICON_BADGE}.
59          */
60         public static final String WORK_PROFILE_ICON = "WORK_PROFILE_ICON";
61 
62         /**
63          * General purpose icon representing the work profile off state.
64          */
65         public static final String WORK_PROFILE_OFF_ICON = "WORK_PROFILE_OFF_ICON";
66 
67         /**
68          * General purpose icon for the work profile user avatar.
69          */
70         public static final String WORK_PROFILE_USER_ICON = "WORK_PROFILE_USER_ICON";
71 
72         /**
73          * Class containing the source identifiers used to update device management-related system
74          * drawable.
75          */
76         public static final class Source {
77 
Source()78             private Source() {
79             }
80 
81             /**
82              * A source identifier indicating that the updatable drawable is used in notifications.
83              */
84             public static final String NOTIFICATION = "NOTIFICATION";
85 
86             /**
87              * A source identifier indicating that the updatable drawable is used in a cross
88              * profile switching animation.
89              */
90             public static final String PROFILE_SWITCH_ANIMATION = "PROFILE_SWITCH_ANIMATION";
91 
92             /**
93              * A source identifier indicating that the updatable drawable is used in a work
94              * profile home screen widget.
95              */
96             public static final String HOME_WIDGET = "HOME_WIDGET";
97 
98             /**
99              * A source identifier indicating that the updatable drawable is used in the launcher
100              * turn off work button.
101              */
102             public static final String LAUNCHER_OFF_BUTTON = "LAUNCHER_OFF_BUTTON";
103 
104             /**
105              * A source identifier indicating that the updatable drawable is used in quick settings.
106              */
107             public static final String QUICK_SETTINGS = "QUICK_SETTINGS";
108 
109             /**
110              * A source identifier indicating that the updatable drawable is used in the status bar.
111              */
112             public static final String STATUS_BAR = "STATUS_BAR";
113         }
114 
115         /**
116          * Class containing the style identifiers used to update device management-related system
117          * drawable.
118          */
119         public static final class Style {
120 
Style()121             private Style() {
122             }
123 
124             /**
125              * A style identifier indicating that the updatable drawable has a solid color fill.
126              */
127             public static final String SOLID_COLORED = "SOLID_COLORED";
128 
129             /**
130              * A style identifier indicating that the updatable drawable has a solid non-colored
131              * fill.
132              */
133             public static final String SOLID_NOT_COLORED = "SOLID_NOT_COLORED";
134 
135             /**
136              * A style identifier indicating that the updatable drawable is an outline.
137              */
138             public static final String OUTLINE = "OUTLINE";
139         }
140     }
141 
142     /**
143      * Class containing the identifiers used to update device management-related system strings.
144      *
145      * @hide
146      */
147     @SystemApi
148     public static final class Strings {
149 
Strings()150         private Strings() {
151         }
152 
153         /**
154          * Class containing the identifiers used to update device management-related system strings
155          * in the Settings package
156          *
157          * @hide
158          */
159         public static final class Settings {
160 
Settings()161             private Settings() {
162             }
163 
164             private static final String PREFIX = "Settings.";
165 
166             /**
167              * Title shown for menu item that launches face settings or enrollment, for work profile
168              */
169             public static final String FACE_SETTINGS_FOR_WORK_TITLE =
170                     PREFIX + "FACE_SETTINGS_FOR_WORK_TITLE";
171 
172             /**
173              * Warning when removing the last fingerprint on a work profile
174              */
175             public static final String WORK_PROFILE_FINGERPRINT_LAST_DELETE_MESSAGE =
176                     PREFIX + "WORK_PROFILE_FINGERPRINT_LAST_DELETE_MESSAGE";
177 
178             /**
179              * Text letting the user know that their IT admin can't reset their screen lock if they
180              * forget it, and they can choose to set another lock that would be specifically for
181              * their work apps
182              */
183             public static final String WORK_PROFILE_IT_ADMIN_CANT_RESET_SCREEN_LOCK =
184                     PREFIX + "WORK_PROFILE_IT_ADMIN_CANT_RESET_SCREEN_LOCK";
185 
186             /**
187              * Text shown on the CTA link shown to user to set a separate lock for work apps
188              */
189             public static final String WORK_PROFILE_IT_ADMIN_CANT_RESET_SCREEN_LOCK_ACTION =
190                     PREFIX + "WORK_PROFILE_IT_ADMIN_CANT_RESET_SCREEN_LOCK_ACTION";
191 
192             /**
193              * Message shown in screen lock picker for setting up a work profile screen lock
194              */
195             public static final String WORK_PROFILE_SCREEN_LOCK_SETUP_MESSAGE =
196                     PREFIX + "WORK_PROFILE_SCREEN_LOCK_SETUP_MESSAGE";
197 
198             /**
199              * Title for PreferenceScreen to launch picker for security method for the managed
200              * profile when there is none
201              */
202             public static final String WORK_PROFILE_SET_UNLOCK_LAUNCH_PICKER_TITLE =
203                     PREFIX + "WORK_PROFILE_SET_UNLOCK_LAUNCH_PICKER_TITLE";
204 
205             /**
206              * Content of the dialog shown when the user only has one attempt left to provide the
207              * work lock pattern before the work profile is removed
208              */
209             public static final String WORK_PROFILE_LAST_PATTERN_ATTEMPT_BEFORE_WIPE =
210                     PREFIX + "WORK_PROFILE_LAST_PATTERN_ATTEMPT_BEFORE_WIPE";
211 
212             /**
213              * Content of the dialog shown when the user only has one attempt left to provide the
214              * work lock pattern before the work profile is removed
215              */
216             public static final String WORK_PROFILE_LAST_PIN_ATTEMPT_BEFORE_WIPE =
217                     PREFIX + "WORK_PROFILE_LAST_PIN_ATTEMPT_BEFORE_WIPE";
218 
219             /**
220              * Content of the dialog shown when the user only has one attempt left to provide the
221              * work lock pattern before the work profile is removed
222              */
223             public static final String WORK_PROFILE_LAST_PASSWORD_ATTEMPT_BEFORE_WIPE =
224                     PREFIX + "WORK_PROFILE_LAST_PASSWORD_ATTEMPT_BEFORE_WIPE";
225 
226             /**
227              * Content of the dialog shown when the user has failed to provide the device lock too
228              * many times and the device is wiped
229              */
230             public static final String WORK_PROFILE_LOCK_ATTEMPTS_FAILED =
231                     PREFIX + "WORK_PROFILE_LOCK_ATTEMPTS_FAILED";
232 
233             /**
234              * Content description for work profile accounts group
235              */
236             public static final String ACCESSIBILITY_CATEGORY_WORK =
237                     PREFIX + "ACCESSIBILITY_CATEGORY_WORK";
238 
239             /**
240              * Content description for personal profile accounts group
241              */
242             public static final String ACCESSIBILITY_CATEGORY_PERSONAL =
243                     PREFIX + "ACCESSIBILITY_CATEGORY_PERSONAL";
244 
245             /**
246              * Content description for work profile details page title
247              */
248             public static final String ACCESSIBILITY_WORK_ACCOUNT_TITLE =
249                     PREFIX + "ACCESSIBILITY_WORK_ACCOUNT_TITLE";
250 
251             /**
252              * Content description for personal profile details page title
253              */
254             public static final String ACCESSIBILITY_PERSONAL_ACCOUNT_TITLE =
255                     PREFIX + "ACCESSIBILITY_PERSONAL_ACCOUNT_TITLE";
256 
257             /**
258              * Title for work profile location switch
259              */
260             public static final String WORK_PROFILE_LOCATION_SWITCH_TITLE =
261                     PREFIX + "WORK_PROFILE_LOCATION_SWITCH_TITLE";
262 
263             /**
264              * Header when setting work profile password
265              */
266             public static final String SET_WORK_PROFILE_PASSWORD_HEADER =
267                     PREFIX + "SET_WORK_PROFILE_PASSWORD_HEADER";
268 
269             /**
270              * Header when setting work profile PIN
271              */
272             public static final String SET_WORK_PROFILE_PIN_HEADER =
273                     PREFIX + "SET_WORK_PROFILE_PIN_HEADER";
274 
275             /**
276              * Header when setting work profile pattern
277              */
278             public static final String SET_WORK_PROFILE_PATTERN_HEADER =
279                     PREFIX + "SET_WORK_PROFILE_PATTERN_HEADER";
280 
281             /**
282              * Header when confirming work profile password
283              */
284             public static final String CONFIRM_WORK_PROFILE_PASSWORD_HEADER =
285                     PREFIX + "CONFIRM_WORK_PROFILE_PASSWORD_HEADER";
286 
287             /**
288              * Header when confirming work profile pin
289              */
290             public static final String CONFIRM_WORK_PROFILE_PIN_HEADER =
291                     PREFIX + "CONFIRM_WORK_PROFILE_PIN_HEADER";
292 
293             /**
294              * Header when confirming work profile pattern
295              */
296             public static final String CONFIRM_WORK_PROFILE_PATTERN_HEADER =
297                     PREFIX + "CONFIRM_WORK_PROFILE_PATTERN_HEADER";
298 
299             /**
300              * Header when re-entering work profile password
301              */
302             public static final String REENTER_WORK_PROFILE_PASSWORD_HEADER =
303                     PREFIX + "REENTER_WORK_PROFILE_PASSWORD_HEADER";
304 
305             /**
306              * Header when re-entering work profile pin
307              */
308             public static final String REENTER_WORK_PROFILE_PIN_HEADER =
309                     PREFIX + "REENTER_WORK_PROFILE_PIN_HEADER";
310 
311             /**
312              * Message to be used to explain the users that they need to enter their work pattern to
313              * continue a particular operation
314              */
315             public static final String WORK_PROFILE_CONFIRM_PATTERN =
316                     PREFIX + "WORK_PROFILE_CONFIRM_PATTERN";
317 
318             /**
319              * Message to be used to explain the users that they need to enter their work pin to
320              * continue a particular operation
321              */
322             public static final String WORK_PROFILE_CONFIRM_PIN =
323                     PREFIX + "WORK_PROFILE_CONFIRM_PIN";
324 
325             /**
326              * Message to be used to explain the users that they need to enter their work password
327              * to
328              * continue a particular operation
329              */
330             public static final String WORK_PROFILE_CONFIRM_PASSWORD =
331                     PREFIX + "WORK_PROFILE_CONFIRM_PASSWORD";
332 
333             /**
334              * This string shows = PREFIX + "shows"; up on a screen where a user can enter a pattern
335              * that lets them access
336              * their work profile. This is an extra security measure that's required for them to
337              * continue
338              */
339             public static final String WORK_PROFILE_PATTERN_REQUIRED =
340                     PREFIX + "WORK_PROFILE_PATTERN_REQUIRED";
341 
342             /**
343              * This string shows = PREFIX + "shows"; up on a screen where a user can enter a pin
344              * that lets them access
345              * their work profile. This is an extra security measure that's required for them to
346              * continue
347              */
348             public static final String WORK_PROFILE_PIN_REQUIRED =
349                     PREFIX + "WORK_PROFILE_PIN_REQUIRED";
350 
351             /**
352              * This string shows = PREFIX + "shows"; up on a screen where a user can enter a
353              * password that lets them access
354              * their work profile. This is an extra security measure that's required for them to
355              * continue
356              */
357             public static final String WORK_PROFILE_PASSWORD_REQUIRED =
358                     PREFIX + "WORK_PROFILE_PASSWORD_REQUIRED";
359 
360             /**
361              * Header for Work Profile security settings
362              */
363             public static final String WORK_PROFILE_SECURITY_TITLE =
364                     PREFIX + "WORK_PROFILE_SECURITY_TITLE";
365 
366             /**
367              * Header for Work Profile unify locks settings
368              */
369             public static final String WORK_PROFILE_UNIFY_LOCKS_TITLE =
370                     PREFIX + "WORK_PROFILE_UNIFY_LOCKS_TITLE";
371 
372             /**
373              * Setting option explanation to unify work and personal locks
374              */
375             public static final String WORK_PROFILE_UNIFY_LOCKS_SUMMARY =
376                     PREFIX + "WORK_PROFILE_UNIFY_LOCKS_SUMMARY";
377 
378             /**
379              * Further explanation when the user wants to unify work and personal locks
380              */
381             public static final String WORK_PROFILE_UNIFY_LOCKS_DETAIL =
382                     PREFIX + "WORK_PROFILE_UNIFY_LOCKS_DETAIL";
383 
384             /**
385              * Ask if the user wants to create a new lock for personal and work as the current work
386              * lock is not enough for the device
387              */
388             public static final String WORK_PROFILE_UNIFY_LOCKS_NONCOMPLIANT =
389                     PREFIX + "WORK_PROFILE_UNIFY_LOCKS_NONCOMPLIANT";
390 
391             /**
392              * Title of 'Work profile keyboards & tools' preference category
393              */
394             public static final String WORK_PROFILE_KEYBOARDS_AND_TOOLS =
395                     PREFIX + "WORK_PROFILE_KEYBOARDS_AND_TOOLS";
396 
397             /**
398              * Label for state when work profile is not available
399              */
400             public static final String WORK_PROFILE_NOT_AVAILABLE =
401                     PREFIX + "WORK_PROFILE_NOT_AVAILABLE";
402 
403             /**
404              * Label for work profile setting (to allow turning work profile on and off)
405              */
406             public static final String WORK_PROFILE_SETTING = PREFIX + "WORK_PROFILE_SETTING";
407 
408             /**
409              * Description of the work profile setting when the work profile is on
410              */
411             public static final String WORK_PROFILE_SETTING_ON_SUMMARY =
412                     PREFIX + "WORK_PROFILE_SETTING_ON_SUMMARY";
413 
414             /**
415              * Description of the work profile setting when the work profile is off
416              */
417             public static final String WORK_PROFILE_SETTING_OFF_SUMMARY =
418                     PREFIX + "WORK_PROFILE_SETTING_OFF_SUMMARY";
419 
420             /**
421              * Button text to remove work profile
422              */
423             public static final String REMOVE_WORK_PROFILE = PREFIX + "REMOVE_WORK_PROFILE";
424 
425             /**
426              * Text of message to show to device owner user whose administrator has installed a SSL
427              * CA Cert
428              */
429             public static final String DEVICE_OWNER_INSTALLED_CERTIFICATE_AUTHORITY_WARNING =
430                     PREFIX + "DEVICE_OWNER_INSTALLED_CERTIFICATE_AUTHORITY_WARNING";
431 
432             /**
433              * Text of message to show to work profile users whose administrator has installed a SSL
434              * CA Cert
435              */
436             public static final String WORK_PROFILE_INSTALLED_CERTIFICATE_AUTHORITY_WARNING =
437                     PREFIX + "WORK_PROFILE_INSTALLED_CERTIFICATE_AUTHORITY_WARNING";
438 
439             /**
440              * Work profile removal confirmation title
441              */
442             public static final String WORK_PROFILE_CONFIRM_REMOVE_TITLE =
443                     PREFIX + "WORK_PROFILE_CONFIRM_REMOVE_TITLE";
444 
445             /**
446              * Work profile removal confirmation message
447              */
448             public static final String WORK_PROFILE_CONFIRM_REMOVE_MESSAGE =
449                     PREFIX + "WORK_PROFILE_CONFIRM_REMOVE_MESSAGE";
450 
451             /**
452              * Toast shown when an app in the work profile attempts to open notification settings
453              * and apps in the work profile cannot access notification settings
454              */
455             public static final String WORK_APPS_CANNOT_ACCESS_NOTIFICATION_SETTINGS =
456                     PREFIX + "WORK_APPS_CANNOT_ACCESS_NOTIFICATION_SETTINGS";
457 
458             /**
459              * Work sound settings section header
460              */
461             public static final String WORK_PROFILE_SOUND_SETTINGS_SECTION_HEADER =
462                     PREFIX + "WORK_PROFILE_SOUND_SETTINGS_SECTION_HEADER";
463 
464             /**
465              * Title for the switch that enables syncing of personal ringtones to work profile
466              */
467             public static final String WORK_PROFILE_USE_PERSONAL_SOUNDS_TITLE =
468                     PREFIX + "WORK_PROFILE_USE_PERSONAL_SOUNDS_TITLE";
469 
470             /**
471              * Summary for the switch that enables syncing of personal ringtones to work profile
472              */
473             public static final String WORK_PROFILE_USE_PERSONAL_SOUNDS_SUMMARY =
474                     PREFIX + "WORK_PROFILE_USE_PERSONAL_SOUNDS_SUMMARY";
475 
476             /**
477              * Title for the option defining the work profile phone ringtone
478              */
479             public static final String WORK_PROFILE_RINGTONE_TITLE =
480                     PREFIX + "WORK_PROFILE_RINGTONE_TITLE";
481 
482             /**
483              * Title for the option defining the default work profile notification ringtone
484              */
485             public static final String WORK_PROFILE_NOTIFICATION_RINGTONE_TITLE =
486                     PREFIX + "WORK_PROFILE_NOTIFICATION_RINGTONE_TITLE";
487 
488             /**
489              * Title for the option defining the default work alarm ringtone
490              */
491             public static final String WORK_PROFILE_ALARM_RINGTONE_TITLE =
492                     PREFIX + "WORK_PROFILE_ALARM_RINGTONE_TITLE";
493 
494             /**
495              * Summary for sounds when sync with personal sounds is active
496              */
497             public static final String WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_ACTIVE_SUMMARY =
498                     PREFIX + "WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_ACTIVE_SUMMARY";
499 
500             /**
501              * Title for dialog shown when enabling sync with personal sounds
502              */
503             public static final String
504                     ENABLE_WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_DIALOG_TITLE =
505                     PREFIX + "ENABLE_WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_DIALOG_TITLE";
506 
507             /**
508              * Message for dialog shown when using the same sounds for work events as for personal
509              * events
510              */
511             public static final String
512                     ENABLE_WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_DIALOG_MESSAGE =
513                     PREFIX + "ENABLE_WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_DIALOG_MESSAGE";
514 
515             /**
516              * Work profile notifications section header
517              */
518             public static final String WORK_PROFILE_NOTIFICATIONS_SECTION_HEADER =
519                     PREFIX + "WORK_PROFILE_NOTIFICATIONS_SECTION_HEADER";
520 
521             /**
522              * Title for the option controlling notifications for work profile
523              */
524             public static final String WORK_PROFILE_LOCKED_NOTIFICATION_TITLE =
525                     PREFIX + "WORK_PROFILE_LOCKED_NOTIFICATION_TITLE";
526 
527             /**
528              * Title for redacting sensitive content on lockscreen for work profiles
529              */
530             public static final String WORK_PROFILE_LOCK_SCREEN_REDACT_NOTIFICATION_TITLE =
531                     PREFIX + "WORK_PROFILE_LOCK_SCREEN_REDACT_NOTIFICATION_TITLE";
532 
533             /**
534              * Summary for redacting sensitive content on lockscreen for work profiles
535              */
536             public static final String WORK_PROFILE_LOCK_SCREEN_REDACT_NOTIFICATION_SUMMARY =
537                     PREFIX + "WORK_PROFILE_LOCK_SCREEN_REDACT_NOTIFICATION_SUMMARY";
538 
539             /**
540              * Indicates that the work profile admin doesn't allow this notification listener to
541              * access
542              * work profile notifications
543              */
544             public static final String WORK_PROFILE_NOTIFICATION_LISTENER_BLOCKED =
545                     PREFIX + "WORK_PROFILE_NOTIFICATION_LISTENER_BLOCKED";
546 
547             /**
548              * This setting shows a user's connected work and personal apps.
549              */
550             public static final String CONNECTED_WORK_AND_PERSONAL_APPS_TITLE =
551                     PREFIX + "CONNECTED_WORK_AND_PERSONAL_APPS_TITLE";
552 
553             /**
554              * This text lets a user know that if they connect work and personal apps,
555              * they will share permissions and can access each other's data
556              */
557             public static final String CONNECTED_APPS_SHARE_PERMISSIONS_AND_DATA =
558                     PREFIX + "CONNECTED_APPS_SHARE_PERMISSIONS_AND_DATA";
559 
560             /**
561              * This text lets a user know that they should only connect work and personal apps if
562              * they
563              * trust the work app with their personal data
564              */
565             public static final String ONLY_CONNECT_TRUSTED_APPS =
566                     PREFIX + "ONLY_CONNECT_TRUSTED_APPS";
567 
568             /**
569              * This text lets a user know how to disconnect work and personal apps
570              */
571             public static final String HOW_TO_DISCONNECT_APPS = PREFIX + "HOW_TO_DISCONNECT_APPS";
572 
573             /**
574              * Title of confirmation dialog when connecting work and personal apps
575              */
576             public static final String CONNECT_APPS_DIALOG_TITLE =
577                     PREFIX + "CONNECT_APPS_DIALOG_TITLE";
578 
579             /**
580              * This dialog is shown when a user tries to connect a work app to a personal
581              * app
582              */
583             public static final String CONNECT_APPS_DIALOG_SUMMARY =
584                     PREFIX + "CONNECT_APPS_DIALOG_SUMMARY";
585 
586             /**
587              * This text lets the user know that their work app will be able to access data in their
588              * personal app
589              */
590             public static final String APP_CAN_ACCESS_PERSONAL_DATA =
591                     PREFIX + "APP_CAN_ACCESS_PERSONAL_DATA";
592 
593             /**
594              * This text lets the user know that their work app will be able to use permissions in
595              * their personal app
596              */
597             public static final String APP_CAN_ACCESS_PERSONAL_PERMISSIONS =
598                     PREFIX + "APP_CAN_ACCESS_PERSONAL_PERMISSIONS";
599 
600             /**
601              * lets a user know that they need to install an app in their work profile in order to
602              * connect it to the corresponding personal app
603              */
604             public static final String INSTALL_IN_WORK_PROFILE_TO_CONNECT_PROMPT =
605                     PREFIX + "INSTALL_IN_WORK_PROFILE_TO_CONNECT_PROMPT";
606 
607             /**
608              * lets a user know that they need to install an app in their personal profile in order
609              * to
610              * connect it to the corresponding work app
611              */
612             public static final String INSTALL_IN_PERSONAL_PROFILE_TO_CONNECT_PROMPT =
613                     PREFIX + "INSTALL_IN_PERSONAL_PROFILE_TO_CONNECT_PROMPT";
614 
615             /**
616              * Header for showing the organisation managing the work profile
617              */
618             public static final String WORK_PROFILE_MANAGED_BY = PREFIX + "WORK_PROFILE_MANAGED_BY";
619 
620             /**
621              * Summary showing the enterprise who manages the device or profile.
622              */
623             public static final String MANAGED_BY = PREFIX + "MANAGED_BY";
624 
625             /**
626              * Warning message about disabling usage access on profile owner
627              */
628             public static final String WORK_PROFILE_DISABLE_USAGE_ACCESS_WARNING =
629                     PREFIX + "WORK_PROFILE_DISABLE_USAGE_ACCESS_WARNING";
630 
631             /**
632              * Title for dialog displayed when user taps a setting on their phone that's blocked by
633              * their IT admin
634              */
635             public static final String DISABLED_BY_IT_ADMIN_TITLE =
636                     PREFIX + "DISABLED_BY_IT_ADMIN_TITLE";
637 
638             /**
639              * Shown when the user tries to change phone settings that are blocked by their IT admin
640              */
641             public static final String CONTACT_YOUR_IT_ADMIN = PREFIX + "CONTACT_YOUR_IT_ADMIN";
642 
643             /**
644              * warn user about policies the admin can set in a work profile
645              */
646             public static final String WORK_PROFILE_ADMIN_POLICIES_WARNING =
647                     PREFIX + "WORK_PROFILE_ADMIN_POLICIES_WARNING";
648 
649             /**
650              * warn user about policies the admin can set on a user
651              */
652             public static final String USER_ADMIN_POLICIES_WARNING =
653                     PREFIX + "USER_ADMIN_POLICIES_WARNING";
654 
655             /**
656              * warn user about policies the admin can set on a device
657              */
658             public static final String DEVICE_ADMIN_POLICIES_WARNING =
659                     PREFIX + "DEVICE_ADMIN_POLICIES_WARNING";
660 
661             /**
662              * Condition that work profile is off
663              */
664             public static final String WORK_PROFILE_OFF_CONDITION_TITLE =
665                     PREFIX + "WORK_PROFILE_OFF_CONDITION_TITLE";
666 
667             /**
668              * Title of work profile setting page
669              */
670             public static final String MANAGED_PROFILE_SETTINGS_TITLE =
671                     PREFIX + "MANAGED_PROFILE_SETTINGS_TITLE";
672 
673             /**
674              * Setting that lets a user's personal apps identify contacts using the user's work
675              * directory
676              */
677             public static final String WORK_PROFILE_CONTACT_SEARCH_TITLE =
678                     PREFIX + "WORK_PROFILE_CONTACT_SEARCH_TITLE";
679 
680             /**
681              * This setting lets a user's personal apps identify contacts using the user's work
682              * directory
683              */
684             public static final String WORK_PROFILE_CONTACT_SEARCH_SUMMARY =
685                     PREFIX + "WORK_PROFILE_CONTACT_SEARCH_SUMMARY";
686 
687             /**
688              * This setting lets the user show their work events on their personal calendar
689              */
690             public static final String CROSS_PROFILE_CALENDAR_TITLE =
691                     PREFIX + "CROSS_PROFILE_CALENDAR_TITLE";
692 
693             /**
694              * Setting description. If the user turns on this setting, they can see their work
695              * events on their personal calendar
696              */
697             public static final String CROSS_PROFILE_CALENDAR_SUMMARY =
698                     PREFIX + "CROSS_PROFILE_CALENDAR_SUMMARY";
699 
700             /**
701              * Label explaining that an always-on VPN was set by the admin in the personal profile
702              */
703             public static final String ALWAYS_ON_VPN_PERSONAL_PROFILE =
704                     PREFIX + "ALWAYS_ON_VPN_PERSONAL_PROFILE";
705 
706             /**
707              * Label explaining that an always-on VPN was set by the admin for the entire device
708              */
709             public static final String ALWAYS_ON_VPN_DEVICE = PREFIX + "ALWAYS_ON_VPN_DEVICE";
710 
711             /**
712              * Label explaining that an always-on VPN was set by the admin in the work profile
713              */
714             public static final String ALWAYS_ON_VPN_WORK_PROFILE =
715                     PREFIX + "ALWAYS_ON_VPN_WORK_PROFILE";
716 
717             /**
718              * Label explaining that the admin installed trusted CA certificates in personal profile
719              */
720             public static final String CA_CERTS_PERSONAL_PROFILE =
721                     PREFIX + "CA_CERTS_PERSONAL_PROFILE";
722 
723             /**
724              * Label explaining that the admin installed trusted CA certificates in work profile
725              */
726             public static final String CA_CERTS_WORK_PROFILE = PREFIX + "CA_CERTS_WORK_PROFILE";
727 
728             /**
729              * Label explaining that the admin installed trusted CA certificates for the entire
730              * device
731              */
732             public static final String CA_CERTS_DEVICE = PREFIX + "CA_CERTS_DEVICE";
733 
734             /**
735              * Label explaining that the admin can lock the device and change the user's password
736              */
737             public static final String ADMIN_CAN_LOCK_DEVICE = PREFIX + "ADMIN_CAN_LOCK_DEVICE";
738 
739             /**
740              * Label explaining that the admin can wipe the device remotely
741              */
742             public static final String ADMIN_CAN_WIPE_DEVICE = PREFIX + "ADMIN_CAN_WIPE_DEVICE";
743 
744             /**
745              * Label explaining that the admin configured the device to wipe itself when the
746              * password is mistyped too many times
747              */
748             public static final String ADMIN_CONFIGURED_FAILED_PASSWORD_WIPE_DEVICE =
749                     PREFIX + "ADMIN_CONFIGURED_FAILED_PASSWORD_WIPE_DEVICE";
750 
751             /**
752              * Label explaining that the admin configured the work profile to wipe itself when the
753              * password is mistyped too many times
754              */
755             public static final String ADMIN_CONFIGURED_FAILED_PASSWORD_WIPE_WORK_PROFILE =
756                     PREFIX + "ADMIN_CONFIGURED_FAILED_PASSWORD_WIPE_WORK_PROFILE";
757 
758             /**
759              * Message indicating that the device is enterprise-managed by a Device Owner
760              */
761             public static final String DEVICE_MANAGED_WITHOUT_NAME =
762                     PREFIX + "DEVICE_MANAGED_WITHOUT_NAME";
763 
764             /**
765              * Message indicating that the device is enterprise-managed by a Device Owner
766              */
767             public static final String DEVICE_MANAGED_WITH_NAME =
768                     PREFIX + "DEVICE_MANAGED_WITH_NAME";
769 
770             /**
771              * Subtext of work profile app for current setting
772              */
773             public static final String WORK_PROFILE_APP_SUBTEXT =
774                     PREFIX + "WORK_PROFILE_APP_SUBTEXT";
775 
776             /**
777              * Subtext of personal profile app for current setting
778              */
779             public static final String PERSONAL_PROFILE_APP_SUBTEXT =
780                     PREFIX + "PERSONAL_PROFILE_APP_SUBTEXT";
781 
782             /**
783              * Title shown for work menu item that launches fingerprint settings or enrollment
784              */
785             public static final String FINGERPRINT_FOR_WORK = PREFIX + "FINGERPRINT_FOR_WORK";
786 
787             /**
788              * Message shown in face enrollment dialog, when face unlock is disabled by device admin
789              */
790             public static final String FACE_UNLOCK_DISABLED = PREFIX + "FACE_UNLOCK_DISABLED";
791 
792             /**
793              * message shown in fingerprint enrollment dialog, when fingerprint unlock is disabled
794              * by device admin
795              */
796             public static final String FINGERPRINT_UNLOCK_DISABLED =
797                     PREFIX + "FINGERPRINT_UNLOCK_DISABLED";
798 
799             /**
800              * Text shown in fingerprint settings explaining what the fingerprint can be used for in
801              * the case unlocking is disabled
802              */
803             public static final String FINGERPRINT_UNLOCK_DISABLED_EXPLANATION =
804                     PREFIX + "FINGERPRINT_UNLOCK_DISABLED_EXPLANATION";
805 
806             /**
807              * Error shown when in PIN mode and PIN has been used recently
808              */
809             public static final String PIN_RECENTLY_USED = PREFIX + "PIN_RECENTLY_USED";
810 
811             /**
812              * Error shown when in PASSWORD mode and password has been used recently
813              */
814             public static final String PASSWORD_RECENTLY_USED = PREFIX + "PASSWORD_RECENTLY_USED";
815 
816             /**
817              * Title of preference to manage device admin apps
818              */
819             public static final String MANAGE_DEVICE_ADMIN_APPS =
820                     PREFIX + "MANAGE_DEVICE_ADMIN_APPS";
821 
822             /**
823              * Inform the user that currently no device admin apps are installed and active
824              */
825             public static final String NUMBER_OF_DEVICE_ADMINS_NONE =
826                     PREFIX + "NUMBER_OF_DEVICE_ADMINS_NONE";
827 
828             /**
829              * Inform the user how many device admin apps are installed and active
830              */
831             public static final String NUMBER_OF_DEVICE_ADMINS = PREFIX + "NUMBER_OF_DEVICE_ADMINS";
832 
833             /**
834              * Title that asks the user to contact the IT admin to reset password
835              */
836             public static final String FORGOT_PASSWORD_TITLE = PREFIX + "FORGOT_PASSWORD_TITLE";
837 
838             /**
839              * Content that asks the user to contact the IT admin to reset password
840              */
841             public static final String FORGOT_PASSWORD_TEXT = PREFIX + "FORGOT_PASSWORD_TEXT";
842 
843             /**
844              * Error message shown when trying to move device administrators to external disks, such
845              * as SD card
846              */
847             public static final String ERROR_MOVE_DEVICE_ADMIN = PREFIX + "ERROR_MOVE_DEVICE_ADMIN";
848 
849             /**
850              * Device admin app settings title
851              */
852             public static final String DEVICE_ADMIN_SETTINGS_TITLE =
853                     PREFIX + "DEVICE_ADMIN_SETTINGS_TITLE";
854 
855             /**
856              * Button to remove the active device admin app
857              */
858             public static final String REMOVE_DEVICE_ADMIN = PREFIX + "REMOVE_DEVICE_ADMIN";
859 
860             /**
861              * Button to uninstall the device admin app
862              */
863             public static final String UNINSTALL_DEVICE_ADMIN = PREFIX + "UNINSTALL_DEVICE_ADMIN";
864 
865             /**
866              * Button to deactivate and uninstall the device admin app
867              */
868             public static final String REMOVE_AND_UNINSTALL_DEVICE_ADMIN =
869                     PREFIX + "REMOVE_AND_UNINSTALL_DEVICE_ADMIN";
870 
871             /**
872              * Message when there are no available device admin apps to display
873              */
874             public static final String NO_DEVICE_ADMINS = PREFIX + "NO_DEVICE_ADMINS";
875 
876             /**
877              * Title for screen to add a device admin app
878              */
879             public static final String ACTIVATE_DEVICE_ADMIN_APP =
880                     PREFIX + "ACTIVATE_DEVICE_ADMIN_APP";
881 
882             /**
883              * Label for button to set the active device admin
884              */
885             public static final String ACTIVATE_THIS_DEVICE_ADMIN_APP =
886                     PREFIX + "ACTIVATE_THIS_DEVICE_ADMIN_APP";
887 
888             /**
889              * Activate a specific device admin app title
890              */
891             public static final String ACTIVATE_DEVICE_ADMIN_APP_TITLE =
892                     PREFIX + "ACTIVATE_DEVICE_ADMIN_APP_TITLE";
893 
894             /**
895              * Device admin warning message about policies a not active admin can use
896              */
897             public static final String NEW_DEVICE_ADMIN_WARNING =
898                     PREFIX + "NEW_DEVICE_ADMIN_WARNING";
899 
900             /**
901              * Simplified device admin warning message
902              */
903             public static final String NEW_DEVICE_ADMIN_WARNING_SIMPLIFIED =
904                     PREFIX + "NEW_DEVICE_ADMIN_WARNING_SIMPLIFIED";
905 
906             /**
907              * Device admin warning message about policies the active admin can use
908              */
909             public static final String ACTIVE_DEVICE_ADMIN_WARNING =
910                     PREFIX + "ACTIVE_DEVICE_ADMIN_WARNING";
911 
912             /**
913              * Simplified title for dialog to set a profile owner
914              */
915             public static final String SET_PROFILE_OWNER_DIALOG_TITLE =
916                     PREFIX + "SET_PROFILE_OWNER_DIALOG_TITLE";
917 
918             /**
919              * Warning when trying to add a profile owner admin after setup has completed
920              */
921             public static final String SET_PROFILE_OWNER_POSTSETUP_WARNING =
922                     PREFIX + "SET_PROFILE_OWNER_POSTSETUP_WARNING";
923 
924             /**
925              * Message displayed to let the user know that some of the options are disabled by admin
926              */
927             public static final String OTHER_OPTIONS_DISABLED_BY_ADMIN =
928                     PREFIX + "OTHER_OPTIONS_DISABLED_BY_ADMIN";
929 
930             /**
931              * This is shown if the authenticator for a given account fails to remove it due to
932              * admin restrictions
933              */
934             public static final String REMOVE_ACCOUNT_FAILED_ADMIN_RESTRICTION =
935                     PREFIX + "REMOVE_ACCOUNT_FAILED_ADMIN_RESTRICTION";
936 
937             /**
938              * Url for learning more about IT admin policy disabling
939              */
940             public static final String IT_ADMIN_POLICY_DISABLING_INFO_URL =
941                     PREFIX + "IT_ADMIN_POLICY_DISABLING_INFO_URL";
942 
943             /**
944              * Title of dialog shown to ask for user consent for sharing a bugreport that was
945              * requested
946              * remotely by the IT administrator
947              */
948             public static final String SHARE_REMOTE_BUGREPORT_DIALOG_TITLE =
949                     PREFIX + "SHARE_REMOTE_BUGREPORT_DIALOG_TITLE";
950 
951             /**
952              * Message of a dialog shown to ask for user consent for sharing a bugreport that was
953              * requested remotely by the IT administrator
954              */
955             public static final String SHARE_REMOTE_BUGREPORT_FINISHED_REQUEST_CONSENT =
956                     PREFIX + "SHARE_REMOTE_BUGREPORT_FINISHED_REQUEST_CONSENT";
957 
958             /**
959              * Message of a dialog shown to ask for user consent for sharing a bugreport that was
960              * requested remotely by the IT administrator and it's still being taken
961              */
962             public static final String SHARE_REMOTE_BUGREPORT_NOT_FINISHED_REQUEST_CONSENT =
963                     PREFIX + "SHARE_REMOTE_BUGREPORT_NOT_FINISHED_REQUEST_CONSENT";
964 
965             /**
966              * Message of a dialog shown to inform that the remote bugreport that was requested
967              * remotely by the IT administrator is still being taken and will be shared when
968              * finished
969              */
970             public static final String SHARING_REMOTE_BUGREPORT_MESSAGE =
971                     PREFIX + "SHARING_REMOTE_BUGREPORT_MESSAGE";
972 
973             /**
974              * Managed device information screen title
975              */
976             public static final String MANAGED_DEVICE_INFO = PREFIX + "MANAGED_DEVICE_INFO";
977 
978             /**
979              * Summary for managed device info section
980              */
981             public static final String MANAGED_DEVICE_INFO_SUMMARY =
982                     PREFIX + "MANAGED_DEVICE_INFO_SUMMARY";
983 
984             /**
985              * Summary for managed device info section including organization name
986              */
987             public static final String MANAGED_DEVICE_INFO_SUMMARY_WITH_NAME =
988                     PREFIX + "MANAGED_DEVICE_INFO_SUMMARY_WITH_NAME";
989 
990             /**
991              * Enterprise Privacy settings header, summarizing the powers that the admin has
992              */
993             public static final String ENTERPRISE_PRIVACY_HEADER =
994                     PREFIX + "ENTERPRISE_PRIVACY_HEADER";
995 
996             /**
997              * Types of information your organization can see section title
998              */
999             public static final String INFORMATION_YOUR_ORGANIZATION_CAN_SEE_TITLE =
1000                     PREFIX + "INFORMATION_YOUR_ORGANIZATION_CAN_SEE_TITLE";
1001 
1002             /**
1003              * Changes made by your organization's admin section title
1004              */
1005             public static final String CHANGES_MADE_BY_YOUR_ORGANIZATION_ADMIN_TITLE =
1006                     PREFIX + "CHANGES_MADE_BY_YOUR_ORGANIZATION_ADMIN_TITLE";
1007 
1008             /**
1009              * Your access to this device section title
1010              */
1011             public static final String YOUR_ACCESS_TO_THIS_DEVICE_TITLE =
1012                     PREFIX + "YOUR_ACCESS_TO_THIS_DEVICE_TITLE";
1013 
1014             /**
1015              * Things the admin can see: data associated with the work account
1016              */
1017             public static final String ADMIN_CAN_SEE_WORK_DATA_WARNING =
1018                     PREFIX + "ADMIN_CAN_SEE_WORK_DATA_WARNING";
1019 
1020             /**
1021              * Things the admin can see: Apps installed on the device
1022              */
1023             public static final String ADMIN_CAN_SEE_APPS_WARNING =
1024                     PREFIX + "ADMIN_CAN_SEE_APPS_WARNING";
1025 
1026             /**
1027              * Things the admin can see: Amount of time and data spent in each app
1028              */
1029             public static final String ADMIN_CAN_SEE_USAGE_WARNING =
1030                     PREFIX + "ADMIN_CAN_SEE_USAGE_WARNING";
1031 
1032             /**
1033              * Things the admin can see: Most recent network traffic log
1034              */
1035             public static final String ADMIN_CAN_SEE_NETWORK_LOGS_WARNING =
1036                     PREFIX + "ADMIN_CAN_SEE_NETWORK_LOGS_WARNING";
1037             /**
1038              * Things the admin can see: Most recent bug report
1039              */
1040             public static final String ADMIN_CAN_SEE_BUG_REPORT_WARNING =
1041                     PREFIX + "ADMIN_CAN_SEE_BUG_REPORT_WARNING";
1042 
1043             /**
1044              * Things the admin can see: Security logs
1045              */
1046             public static final String ADMIN_CAN_SEE_SECURITY_LOGS_WARNING =
1047                     PREFIX + "ADMIN_CAN_SEE_SECURITY_LOGS_WARNING";
1048 
1049             /**
1050              * Indicate that the admin never took a given action so far (e.g. did not retrieve
1051              * security logs or request bug reports).
1052              */
1053             public static final String ADMIN_ACTION_NONE = PREFIX + "ADMIN_ACTION_NONE";
1054 
1055             /**
1056              * Indicate that the admin installed one or more apps on the device
1057              */
1058             public static final String ADMIN_ACTION_APPS_INSTALLED =
1059                     PREFIX + "ADMIN_ACTION_APPS_INSTALLED";
1060 
1061             /**
1062              * Explaining that the number of apps is an estimation
1063              */
1064             public static final String ADMIN_ACTION_APPS_COUNT_ESTIMATED =
1065                     PREFIX + "ADMIN_ACTION_APPS_COUNT_ESTIMATED";
1066 
1067             /**
1068              * Indicating the minimum number of apps that a label refers to
1069              */
1070             public static final String ADMIN_ACTIONS_APPS_COUNT_MINIMUM =
1071                     PREFIX + "ADMIN_ACTIONS_APPS_COUNT_MINIMUM";
1072 
1073             /**
1074              * Indicate that the admin granted one or more apps access to the device's location
1075              */
1076             public static final String ADMIN_ACTION_ACCESS_LOCATION =
1077                     PREFIX + "ADMIN_ACTION_ACCESS_LOCATION";
1078 
1079             /**
1080              * Indicate that the admin granted one or more apps access to the microphone
1081              */
1082             public static final String ADMIN_ACTION_ACCESS_MICROPHONE =
1083                     PREFIX + "ADMIN_ACTION_ACCESS_MICROPHONE";
1084 
1085             /**
1086              * Indicate that the admin granted one or more apps access to the camera
1087              */
1088             public static final String ADMIN_ACTION_ACCESS_CAMERA =
1089                     PREFIX + "ADMIN_ACTION_ACCESS_CAMERA";
1090 
1091             /**
1092              * Indicate that the admin set one or more apps as defaults for common actions
1093              */
1094             public static final String ADMIN_ACTION_SET_DEFAULT_APPS =
1095                     PREFIX + "ADMIN_ACTION_SET_DEFAULT_APPS";
1096 
1097             /**
1098              * Indicate the number of apps that a label refers to
1099              */
1100             public static final String ADMIN_ACTIONS_APPS_COUNT =
1101                     PREFIX + "ADMIN_ACTIONS_APPS_COUNT";
1102 
1103             /**
1104              * Indicate that the current input method was set by the admin
1105              */
1106             public static final String ADMIN_ACTION_SET_CURRENT_INPUT_METHOD =
1107                     PREFIX + "ADMIN_ACTION_SET_CURRENT_INPUT_METHOD";
1108 
1109             /**
1110              * The input method set by the admin
1111              */
1112             public static final String ADMIN_ACTION_SET_INPUT_METHOD_NAME =
1113                     PREFIX + "ADMIN_ACTION_SET_INPUT_METHOD_NAME";
1114 
1115             /**
1116              * Indicate that a global HTTP proxy was set by the admin
1117              */
1118             public static final String ADMIN_ACTION_SET_HTTP_PROXY =
1119                     PREFIX + "ADMIN_ACTION_SET_HTTP_PROXY";
1120 
1121             /**
1122              * Summary for Enterprise Privacy settings, explaining what the user can expect to find
1123              * under it
1124              */
1125             public static final String WORK_PROFILE_PRIVACY_POLICY_INFO_SUMMARY =
1126                     PREFIX + "WORK_PROFILE_PRIVACY_POLICY_INFO_SUMMARY";
1127 
1128             /**
1129              * Setting on privacy settings screen that will show work policy info
1130              */
1131             public static final String WORK_PROFILE_PRIVACY_POLICY_INFO =
1132                     PREFIX + "WORK_PROFILE_PRIVACY_POLICY_INFO";
1133 
1134             /**
1135              * Search keywords for connected work and personal apps
1136              */
1137             public static final String CONNECTED_APPS_SEARCH_KEYWORDS =
1138                     PREFIX + "CONNECTED_APPS_SEARCH_KEYWORDS";
1139 
1140             /**
1141              * Work profile unification keywords
1142              */
1143             public static final String WORK_PROFILE_UNIFICATION_SEARCH_KEYWORDS =
1144                     PREFIX + "WORK_PROFILE_UNIFICATION_SEARCH_KEYWORDS";
1145 
1146             /**
1147              * Accounts keywords
1148              */
1149             public static final String ACCOUNTS_SEARCH_KEYWORDS =
1150                     PREFIX + "ACCOUNTS_SEARCH_KEYWORDS";
1151 
1152             /**
1153              * Summary for settings preference disabled by administrator
1154              */
1155             public static final String CONTROLLED_BY_ADMIN_SUMMARY =
1156                     PREFIX + "CONTROLLED_BY_ADMIN_SUMMARY";
1157 
1158             /**
1159              * User label for a work profile
1160              */
1161             public static final String WORK_PROFILE_USER_LABEL = PREFIX + "WORK_PROFILE_USER_LABEL";
1162 
1163             /**
1164              * Header for items under the work user
1165              */
1166             public static final String WORK_CATEGORY_HEADER = PREFIX + "WORK_CATEGORY_HEADER";
1167 
1168             /**
1169              * Header for items under the personal user
1170              */
1171             public static final String PERSONAL_CATEGORY_HEADER =
1172                     PREFIX + "PERSONAL_CATEGORY_HEADER";
1173 
1174             /**
1175              * Text to indicate work notification content will be shown on the lockscreen.
1176              */
1177             public static final String LOCK_SCREEN_SHOW_WORK_NOTIFICATION_CONTENT =
1178                     PREFIX + "LOCK_SCREEN_SHOW_WORK_NOTIFICATION_CONTENT";
1179 
1180             /**
1181              * Text to indicate work notification content will be shown on the lockscreen.
1182              */
1183             public static final String LOCK_SCREEN_HIDE_WORK_NOTIFICATION_CONTENT =
1184                     PREFIX + "LOCK_SCREEN_HIDE_WORK_NOTIFICATION_CONTENT";
1185 
1186             /**
1187              * Text for toggle to enable auto-sycing personal data
1188              */
1189             public static final String AUTO_SYNC_PERSONAL_DATA = PREFIX
1190                     + "AUTO_SYNC_PERSONAL_DATA";
1191 
1192             /**
1193              * Text for toggle to enable auto-sycing work data
1194              */
1195             public static final String AUTO_SYNC_WORK_DATA = PREFIX + "AUTO_SYNC_WORK_DATA";
1196 
1197             /**
1198              * Summary for "More security settings" section when a work profile is on the device.
1199              */
1200             public static final String MORE_SECURITY_SETTINGS_WORK_PROFILE_SUMMARY = PREFIX
1201                     + "MORE_SECURITY_SETTINGS_WORK_PROFILE_SUMMARY";
1202 
1203             /**
1204              * Title for screen asking the user to choose a type of screen lock (such as a pattern,
1205              * PIN, or password) that they need to enter to use their work apps
1206              */
1207             public static final String LOCK_SETTINGS_NEW_PROFILE_LOCK_TITLE = PREFIX
1208                     + "LOCK_SETTINGS_NEW_PROFILE_LOCK_TITLE";
1209 
1210             /**
1211              * Title for screen asking the user to update the type of screen lock (such as a
1212              * pattern, PIN, or password) that they need to enter to use their work apps
1213              */
1214             public static final String LOCK_SETTINGS_UPDATE_PROFILE_LOCK_TITLE = PREFIX
1215                     + "LOCK_SETTINGS_UPDATE_PROFILE_LOCK_TITLE";
1216 
1217             /**
1218              * Title for section listing information that can be seen by organization
1219              */
1220             public static final String INFORMATION_SEEN_BY_ORGANIZATION_TITLE = PREFIX
1221                     + "INFORMATION_SEEN_BY_ORGANIZATION_TITLE";
1222 
1223             /**
1224              * Title for section listing changes made by the organization.
1225              */
1226             public static final String CHANGES_BY_ORGANIZATION_TITLE =
1227                     PREFIX + "CHANGES_BY_ORGANIZATION_TITLE";
1228 
1229             /**
1230              * Footer for enterprise privacy screen.
1231              */
1232             public static final String ENTERPRISE_PRIVACY_FOOTER =
1233                     PREFIX + "ENTERPRISE_PRIVACY_FOOTER";
1234 
1235             /**
1236              * Title for spell checker settings for work.
1237              */
1238             public static final String SPELL_CHECKER_FOR_WORK =
1239                     PREFIX + "SPELL_CHECKER_FOR_WORK";
1240 
1241             /**
1242              * Title for personal dictionary for work settings.
1243              */
1244             public static final String PERSONAL_DICTIONARY_FOR_WORK =
1245                     PREFIX + "PERSONAL_DICTIONARY_FOR_WORK";
1246 
1247             /**
1248              * Summary for switch preference to indicate it is disabled by the admin
1249              */
1250             public static final String DISABLED_BY_ADMIN_SWITCH_SUMMARY =
1251                     PREFIX + "DISABLED_BY_ADMIN_SWITCH_SUMMARY";
1252 
1253             /**
1254              * Summary for switch preference to indicate it is enabled by the admin
1255              */
1256             public static final String ENABLED_BY_ADMIN_SWITCH_SUMMARY =
1257                     PREFIX + "ENABLED_BY_ADMIN_SWITCH_SUMMARY";
1258         }
1259 
1260         /**
1261          * Class containing the identifiers used to update device management-related system strings
1262          * in the SystemUi package.
1263          *
1264          * @hide
1265          */
1266         public static final class SystemUi {
1267 
SystemUi()1268             private SystemUi() {
1269             }
1270 
1271             private static final String PREFIX = "SystemUi.";
1272 
1273             /**
1274              * Label in quick settings for toggling work profile on/off.
1275              */
1276             public static final String QS_WORK_PROFILE_LABEL = PREFIX + "QS_WORK_PROFILE_LABEL";
1277 
1278             /**
1279              * Disclosure at the bottom of Quick Settings to indicate device management.
1280              */
1281             public static final String QS_MSG_MANAGEMENT = PREFIX + "QS_MSG_MANAGEMENT";
1282 
1283             /**
1284              * Similar to {@link #QS_MSG_MANAGEMENT} but accepts the organization name as a
1285              * param.
1286              */
1287             public static final String QS_MSG_NAMED_MANAGEMENT = PREFIX + "QS_MSG_NAMED_MANAGEMENT";
1288 
1289             /**
1290              * Disclosure at the bottom of Quick Settings to indicate device management monitoring.
1291              */
1292             public static final String QS_MSG_MANAGEMENT_MONITORING =
1293                     PREFIX + "QS_MSG_MANAGEMENT_MONITORING";
1294 
1295             /**
1296              * Similar to {@link #QS_MSG_MANAGEMENT_MONITORING} but accepts the
1297              * organization name as a param.
1298              */
1299             public static final String QS_MSG_NAMED_MANAGEMENT_MONITORING =
1300                     PREFIX + "QS_MSG_NAMED_MANAGEMENT_MONITORING";
1301 
1302             /**
1303              * Disclosure at the bottom of Quick Settings to indicate device management and the
1304              * device is connected to a VPN, accepts VPN name as a param.
1305              */
1306             public static final String QS_MSG_MANAGEMENT_NAMED_VPN =
1307                     PREFIX + "QS_MSG_MANAGEMENT_NAMED_VPN";
1308 
1309             /**
1310              * Similar to {@link #QS_MSG_MANAGEMENT_NAMED_VPN} but also accepts the
1311              * organization name as a param.
1312              */
1313             public static final String QS_MSG_NAMED_MANAGEMENT_NAMED_VPN =
1314                     PREFIX + "QS_MSG_NAMED_MANAGEMENT_NAMED_VPN";
1315 
1316             /**
1317              * Disclosure at the bottom of Quick Settings to indicate device management and the
1318              * device is connected to multiple VPNs.
1319              */
1320             public static final String QS_MSG_MANAGEMENT_MULTIPLE_VPNS =
1321                     PREFIX + "QS_MSG_MANAGEMENT_MULTIPLE_VPNS";
1322 
1323             /**
1324              * Similar to {@link #QS_MSG_MANAGEMENT_MULTIPLE_VPNS} but also accepts the
1325              * organization name as a param.
1326              */
1327             public static final String QS_MSG_NAMED_MANAGEMENT_MULTIPLE_VPNS =
1328                     PREFIX + "QS_MSG_NAMED_MANAGEMENT_MULTIPLE_VPNS";
1329 
1330             /**
1331              * Disclosure at the bottom of Quick Settings to indicate work profile monitoring.
1332              */
1333             public static final String QS_MSG_WORK_PROFILE_MONITORING =
1334                     PREFIX + "QS_MSG_WORK_PROFILE_MONITORING";
1335 
1336             /**
1337              * Similar to {@link #QS_MSG_WORK_PROFILE_MONITORING} but accepts the
1338              * organization name as a param.
1339              */
1340             public static final String QS_MSG_NAMED_WORK_PROFILE_MONITORING =
1341                     PREFIX + "QS_MSG_NAMED_WORK_PROFILE_MONITORING";
1342 
1343             /**
1344              * Disclosure at the bottom of Quick Settings to indicate network activity is visible to
1345              * admin.
1346              */
1347             public static final String QS_MSG_WORK_PROFILE_NETWORK =
1348                     PREFIX + "QS_MSG_WORK_PROFILE_NETWORK";
1349 
1350             /**
1351              * Disclosure at the bottom of Quick Settings to indicate work profile is connected to a
1352              * VPN, accepts VPN name as a param.
1353              */
1354             public static final String QS_MSG_WORK_PROFILE_NAMED_VPN =
1355                     PREFIX + "QS_MSG_WORK_PROFILE_NAMED_VPN";
1356 
1357             /**
1358              * Disclosure at the bottom of Quick Settings to indicate personal profile is connected
1359              * to a VPN, accepts VPN name as a param.
1360              */
1361             public static final String QS_MSG_PERSONAL_PROFILE_NAMED_VPN =
1362                     PREFIX + "QS_MSG_PERSONAL_PROFILE_NAMED_VPN";
1363 
1364             /**
1365              * Title for dialog to indicate device management.
1366              */
1367             public static final String QS_DIALOG_MANAGEMENT_TITLE =
1368                     PREFIX + "QS_DIALOG_MANAGEMENT_TITLE";
1369 
1370             /**
1371              * Label for button in the device management dialog to open a page with more information
1372              * on the admin's abilities.
1373              */
1374             public static final String QS_DIALOG_VIEW_POLICIES =
1375                     PREFIX + "QS_DIALOG_VIEW_POLICIES";
1376 
1377             /**
1378              * Description for device management dialog to indicate admin abilities.
1379              */
1380             public static final String QS_DIALOG_MANAGEMENT = PREFIX + "QS_DIALOG_MANAGEMENT";
1381 
1382             /**
1383              * Similar to {@link #QS_DIALOG_MANAGEMENT} but accepts the organization name as a
1384              * param.
1385              */
1386             public static final String QS_DIALOG_NAMED_MANAGEMENT =
1387                     PREFIX + "QS_DIALOG_NAMED_MANAGEMENT";
1388 
1389             /**
1390              * Description for the managed device certificate authorities in the device management
1391              * dialog.
1392              */
1393             public static final String QS_DIALOG_MANAGEMENT_CA_CERT =
1394                     PREFIX + "QS_DIALOG_MANAGEMENT_CA_CERT";
1395 
1396             /**
1397              * Description for the work profile certificate authorities in the device management
1398              * dialog.
1399              */
1400             public static final String QS_DIALOG_WORK_PROFILE_CA_CERT =
1401                     PREFIX + "QS_DIALOG_WORK_PROFILE_CA_CERT";
1402 
1403             /**
1404              * Description for the managed device network logging in the device management dialog.
1405              */
1406             public static final String QS_DIALOG_MANAGEMENT_NETWORK =
1407                     PREFIX + "QS_DIALOG_MANAGEMENT_NETWORK";
1408 
1409             /**
1410              * Description for the work profile network logging in the device management dialog.
1411              */
1412             public static final String QS_DIALOG_WORK_PROFILE_NETWORK =
1413                     PREFIX + "QS_DIALOG_WORK_PROFILE_NETWORK";
1414 
1415             /**
1416              * Description for an active VPN in the device management dialog, accepts VPN name as a
1417              * param.
1418              */
1419             public static final String QS_DIALOG_MANAGEMENT_NAMED_VPN =
1420                     PREFIX + "QS_DIALOG_MANAGEMENT_NAMED_VPN";
1421 
1422             /**
1423              * Description for two active VPN in the device management dialog, accepts two VPN names
1424              * as params.
1425              */
1426             public static final String QS_DIALOG_MANAGEMENT_TWO_NAMED_VPN =
1427                     PREFIX + "QS_DIALOG_MANAGEMENT_TWO_NAMED_VPN";
1428 
1429             /**
1430              * Description for an active work profile VPN in the device management dialog, accepts
1431              * VPN name as a param.
1432              */
1433             public static final String QS_DIALOG_WORK_PROFILE_NAMED_VPN =
1434                     PREFIX + "QS_DIALOG_WORK_PROFILE_NAMED_VPN";
1435 
1436             /**
1437              * Description for an active personal profile VPN in the device management dialog,
1438              * accepts VPN name as a param.
1439              */
1440             public static final String QS_DIALOG_PERSONAL_PROFILE_NAMED_VPN =
1441                     PREFIX + "QS_DIALOG_PERSONAL_PROFILE_NAMED_VPN";
1442 
1443             /**
1444              * Content of a dialog shown when the user only has one attempt left to provide the
1445              * correct pin before the work profile is removed.
1446              */
1447             public static final String BIOMETRIC_DIALOG_WORK_PIN_LAST_ATTEMPT =
1448                     PREFIX + "BIOMETRIC_DIALOG_WORK_PIN_LAST_ATTEMPT";
1449 
1450             /**
1451              * Content of a dialog shown when the user only has one attempt left to provide the
1452              * correct pattern before the work profile is removed.
1453              */
1454             public static final String BIOMETRIC_DIALOG_WORK_PATTERN_LAST_ATTEMPT =
1455                     PREFIX + "BIOMETRIC_DIALOG_WORK_PATTERN_LAST_ATTEMPT";
1456 
1457             /**
1458              * Content of a dialog shown when the user only has one attempt left to provide the
1459              * correct password before the work profile is removed.
1460              */
1461             public static final String BIOMETRIC_DIALOG_WORK_PASSWORD_LAST_ATTEMPT =
1462                     PREFIX + "BIOMETRIC_DIALOG_WORK_PASSWORD_LAST_ATTEMPT";
1463 
1464             /**
1465              * Content of a dialog shown when the user has failed to provide the work lock too many
1466              * times and the work profile is removed.
1467              */
1468             public static final String BIOMETRIC_DIALOG_WORK_LOCK_FAILED_ATTEMPTS =
1469                     PREFIX + "BIOMETRIC_DIALOG_WORK_LOCK_FAILED_ATTEMPTS";
1470 
1471             /**
1472              * Accessibility label for managed profile icon in the status bar
1473              */
1474             public static final String STATUS_BAR_WORK_ICON_ACCESSIBILITY =
1475                     PREFIX + "STATUS_BAR_WORK_ICON_ACCESSIBILITY";
1476 
1477             /**
1478              * Text appended to privacy dialog, indicating that the application is in the work
1479              * profile.
1480              */
1481             public static final String ONGOING_PRIVACY_DIALOG_WORK =
1482                     PREFIX + "ONGOING_PRIVACY_DIALOG_WORK";
1483 
1484             /**
1485              * Text on keyguard screen indicating device management.
1486              */
1487             public static final String KEYGUARD_MANAGEMENT_DISCLOSURE =
1488                     PREFIX + "KEYGUARD_MANAGEMENT_DISCLOSURE";
1489 
1490             /**
1491              * Similar to {@link #KEYGUARD_MANAGEMENT_DISCLOSURE} but also accepts organization name
1492              * as a param.
1493              */
1494             public static final String KEYGUARD_NAMED_MANAGEMENT_DISCLOSURE =
1495                     PREFIX + "KEYGUARD_NAMED_MANAGEMENT_DISCLOSURE";
1496 
1497             /**
1498              * Content description for the work profile lock screen.
1499              */
1500             public static final String WORK_LOCK_ACCESSIBILITY = PREFIX + "WORK_LOCK_ACCESSIBILITY";
1501 
1502             /**
1503              * Notification text displayed when screenshots are blocked by an IT admin.
1504              */
1505             public static final String SCREENSHOT_BLOCKED_BY_ADMIN =
1506                     PREFIX + "SCREENSHOT_BLOCKED_BY_ADMIN";
1507 
1508             /**
1509              * Message shown when user is almost at the limit of password attempts where the
1510              * profile will be removed. Accepts number of failed attempts and remaining failed
1511              * attempts as params.
1512              */
1513             public static final String KEYGUARD_DIALOG_FAILED_ATTEMPTS_ALMOST_ERASING_PROFILE =
1514                     PREFIX + "KEYGUARD_DIALOG_FAILED_ATTEMPTS_ALMOST_ERASING_PROFILE";
1515 
1516             /**
1517              * Message shown in dialog when user has exceeded the maximum attempts and the profile
1518              * will be removed. Accepts number of failed attempts as a param.
1519              */
1520             public static final String KEYGUARD_DIALOG_FAILED_ATTEMPTS_ERASING_PROFILE =
1521                     PREFIX + "KEYGUARD_DIALOG_FAILED_ATTEMPTS_ERASING_PROFILE";
1522 
1523             /**
1524              * Monitoring dialog subtitle for the section describing VPN.
1525              */
1526             public static final String QS_DIALOG_MONITORING_VPN_SUBTITLE =
1527                     PREFIX + "QS_DIALOG_MONITORING_VPN_SUBTITLE";
1528 
1529             /**
1530              * Monitoring dialog subtitle for the section describing network logging.
1531              */
1532             public static final String QS_DIALOG_MONITORING_NETWORK_SUBTITLE =
1533                     PREFIX + "QS_DIALOG_MONITORING_NETWORK_SUBTITLE";
1534 
1535             /**
1536              * Monitoring dialog subtitle for the section describing certificate authorities.
1537              */
1538             public static final String QS_DIALOG_MONITORING_CA_CERT_SUBTITLE =
1539                     PREFIX + "QS_DIALOG_MONITORING_CA_CERT_SUBTITLE";
1540         }
1541 
1542         /**
1543          * Class containing the identifiers used to update device management-related system strings
1544          * in the android core package.
1545          *
1546          * @hide
1547          */
1548         public static final class Core {
1549 
Core()1550             private Core() {
1551             }
1552 
1553             private static final String PREFIX = "Core.";
1554             /**
1555              * Notification title when the system deletes the work profile.
1556              */
1557             public static final String WORK_PROFILE_DELETED_TITLE =
1558                     PREFIX + "WORK_PROFILE_DELETED_TITLE";
1559 
1560             /**
1561              * Content text for the "Work profile deleted" notification to indicates that a work
1562              * profile has been deleted because the maximum failed password attempts as been
1563              * reached.
1564              */
1565             public static final String WORK_PROFILE_DELETED_FAILED_PASSWORD_ATTEMPTS_MESSAGE =
1566                     PREFIX + "WORK_PROFILE_DELETED_FAILED_PASSWORD_ATTEMPTS_MESSAGE";
1567 
1568             /**
1569              * Content text for the "Work profile deleted" notification to indicate that a work
1570              * profile has been deleted.
1571              */
1572             public static final String WORK_PROFILE_DELETED_GENERIC_MESSAGE =
1573                     PREFIX + "WORK_PROFILE_DELETED_GENERIC_MESSAGE";
1574 
1575             /**
1576              * Content text for the "Work profile deleted" notification to indicates that a work
1577              * profile has been deleted because the admin of an organization-owned device has
1578              * relinquishes it.
1579              */
1580             public static final String WORK_PROFILE_DELETED_ORG_OWNED_MESSAGE =
1581                     PREFIX + "WORK_PROFILE_DELETED_ORG_OWNED_MESSAGE";
1582 
1583             /**
1584              * Notification title for when personal apps are either blocked or will be blocked
1585              * soon due to a work policy from their admin.
1586              */
1587             public static final String PERSONAL_APP_SUSPENSION_TITLE =
1588                     PREFIX + "PERSONAL_APP_SUSPENSION_TITLE";
1589 
1590             /**
1591              * Content text for the personal app suspension notification to indicate that personal
1592              * apps are blocked due to a work policy from the admin.
1593              */
1594             public static final String PERSONAL_APP_SUSPENSION_MESSAGE =
1595                     PREFIX + "PERSONAL_APP_SUSPENSION_MESSAGE";
1596 
1597             /**
1598              * Content text for the personal app suspension notification to indicate that personal
1599              * apps will be blocked at a particular time due to a work policy from their admin.
1600              * It also explains for how many days the profile is allowed to be off.
1601              * <ul>Takes in the following as params:
1602              * <li> The date that the personal apps will get suspended at</li>
1603              * <li> The time that the personal apps will get suspended at</li>
1604              * <li> The max allowed days for the work profile stay switched off</li>
1605              * </ul>
1606              */
1607             public static final String PERSONAL_APP_SUSPENSION_SOON_MESSAGE =
1608                     PREFIX + "PERSONAL_APP_SUSPENSION_SOON_MESSAGE";
1609 
1610             /**
1611              * Title for the button that turns work profile in the personal app suspension
1612              * notification.
1613              */
1614             public static final String PERSONAL_APP_SUSPENSION_TURN_ON_PROFILE =
1615                     PREFIX + "PERSONAL_APP_SUSPENSION_TURN_ON_PROFILE";
1616 
1617             /**
1618              * A toast message displayed when printing is attempted but disabled by policy, accepts
1619              * admin name as a param.
1620              */
1621             public static final String PRINTING_DISABLED_NAMED_ADMIN =
1622                     PREFIX + "PRINTING_DISABLED_NAMED_ADMIN";
1623 
1624             /**
1625              * Notification title to indicate that the device owner has changed the location
1626              * settings.
1627              */
1628             public static final String LOCATION_CHANGED_TITLE = PREFIX + "LOCATION_CHANGED_TITLE";
1629 
1630             /**
1631              * Content text for the location changed notification to indicate that the device owner
1632              * has changed the location settings.
1633              */
1634             public static final String LOCATION_CHANGED_MESSAGE =
1635                     PREFIX + "LOCATION_CHANGED_MESSAGE";
1636 
1637             /**
1638              * Notification title to indicate that the device is managed and network logging was
1639              * activated by a device owner.
1640              */
1641             public static final String NETWORK_LOGGING_TITLE = PREFIX + "NETWORK_LOGGING_TITLE";
1642 
1643             /**
1644              * Content text for the network logging notification to indicate that the device is
1645              * managed and network logging was activated by a device owner.
1646              */
1647             public static final String NETWORK_LOGGING_MESSAGE = PREFIX + "NETWORK_LOGGING_MESSAGE";
1648 
1649             /**
1650              * Content description of the work profile icon in the notifications.
1651              */
1652             public static final String NOTIFICATION_WORK_PROFILE_CONTENT_DESCRIPTION =
1653                     PREFIX + "NOTIFICATION_WORK_PROFILE_CONTENT_DESCRIPTION";
1654 
1655             /**
1656              * Notification channel name for high-priority alerts from the user's IT admin for key
1657              * updates about the device.
1658              */
1659             public static final String NOTIFICATION_CHANNEL_DEVICE_ADMIN =
1660                     PREFIX + "NOTIFICATION_CHANNEL_DEVICE_ADMIN";
1661 
1662             /**
1663              * Label returned from
1664              * {@link android.content.pm.CrossProfileApps#getProfileSwitchingLabel(UserHandle)}
1665              * that calling app can show to user for the semantic of switching to work profile.
1666              */
1667             public static final String SWITCH_TO_WORK_LABEL = PREFIX + "SWITCH_TO_WORK_LABEL";
1668 
1669             /**
1670              * Label returned from
1671              * {@link android.content.pm.CrossProfileApps#getProfileSwitchingLabel(UserHandle)}
1672              * that calling app can show to user for the semantic of switching to personal profile.
1673              */
1674             public static final String SWITCH_TO_PERSONAL_LABEL =
1675                     PREFIX + "SWITCH_TO_PERSONAL_LABEL";
1676 
1677             /**
1678              * Message to show when an intent automatically switches users into the work profile.
1679              */
1680             public static final String FORWARD_INTENT_TO_WORK = PREFIX + "FORWARD_INTENT_TO_WORK";
1681 
1682             /**
1683              * Message to show when an intent automatically switches users into the personal
1684              * profile.
1685              */
1686             public static final String FORWARD_INTENT_TO_PERSONAL =
1687                     PREFIX + "FORWARD_INTENT_TO_PERSONAL";
1688 
1689             /**
1690              * Text for the toast that is shown when the user clicks on a launcher that doesn't
1691              * support the work profile, takes in the launcher name as a param.
1692              */
1693             public static final String RESOLVER_WORK_PROFILE_NOT_SUPPORTED =
1694                     PREFIX + "RESOLVER_WORK_PROFILE_NOT_SUPPORTED";
1695 
1696             /**
1697              * Label for the personal tab in the {@link com.android.internal.app.ResolverActivity).
1698              */
1699             public static final String RESOLVER_PERSONAL_TAB = PREFIX + "RESOLVER_PERSONAL_TAB";
1700 
1701             /**
1702              * Label for the work tab in the {@link com.android.internal.app.ResolverActivity).
1703              */
1704             public static final String RESOLVER_WORK_TAB = PREFIX + "RESOLVER_WORK_TAB";
1705 
1706             /**
1707              * Accessibility Label for the personal tab in the
1708              * {@link com.android.internal.app.ResolverActivity).
1709              */
1710             public static final String RESOLVER_PERSONAL_TAB_ACCESSIBILITY =
1711                     PREFIX + "RESOLVER_PERSONAL_TAB_ACCESSIBILITY";
1712 
1713             /**
1714              * Accessibility Label for the work tab in the
1715              * {@link com.android.internal.app.ResolverActivity).
1716              */
1717             public static final String RESOLVER_WORK_TAB_ACCESSIBILITY =
1718                     PREFIX + "RESOLVER_WORK_TAB_ACCESSIBILITY";
1719 
1720             /**
1721              * Title for resolver screen to let the user know that their IT admin doesn't allow
1722              * them to share this content across profiles.
1723              */
1724             public static final String RESOLVER_CROSS_PROFILE_BLOCKED_TITLE =
1725                     PREFIX + "RESOLVER_CROSS_PROFILE_BLOCKED_TITLE";
1726 
1727             /**
1728              * Description for resolver screen to let the user know that their IT admin doesn't
1729              * allow them to share this content with apps in their personal profile.
1730              */
1731             public static final String RESOLVER_CANT_SHARE_WITH_PERSONAL =
1732                     PREFIX + "RESOLVER_CANT_SHARE_WITH_PERSONAL";
1733 
1734             /**
1735              * Description for resolver screen to let the user know that their IT admin doesn't
1736              * allow them to share this content with apps in their work profile.
1737              */
1738             public static final String RESOLVER_CANT_SHARE_WITH_WORK =
1739                     PREFIX + "RESOLVER_CANT_SHARE_WITH_WORK";
1740 
1741             /**
1742              * Description for resolver screen to let the user know that their IT admin doesn't
1743              * allow them to open this specific content with an app in their personal profile.
1744              */
1745             public static final String RESOLVER_CANT_ACCESS_PERSONAL =
1746                     PREFIX + "RESOLVER_CANT_ACCESS_PERSONAL";
1747 
1748             /**
1749              * Description for resolver screen to let the user know that their IT admin doesn't
1750              * allow them to open this specific content with an app in their work profile.
1751              */
1752             public static final String RESOLVER_CANT_ACCESS_WORK =
1753                     PREFIX + "RESOLVER_CANT_ACCESS_WORK";
1754 
1755             /**
1756              * Title for resolver screen to let the user know that they need to turn on work apps
1757              * in order to share or open content
1758              */
1759             public static final String RESOLVER_WORK_PAUSED_TITLE =
1760                     PREFIX + "RESOLVER_WORK_PAUSED_TITLE";
1761 
1762             /**
1763              * Text on resolver screen to let the user know that their current work apps don't
1764              * support the specific content.
1765              */
1766             public static final String RESOLVER_NO_WORK_APPS = PREFIX + "RESOLVER_NO_WORK_APPS";
1767 
1768             /**
1769              * Text on resolver screen to let the user know that their current personal apps don't
1770              * support the specific content.
1771              */
1772             public static final String RESOLVER_NO_PERSONAL_APPS =
1773                     PREFIX + "RESOLVER_NO_PERSONAL_APPS";
1774 
1775             /**
1776              * Message informing user that the adding the account is disallowed by an administrator.
1777              */
1778             public static final String CANT_ADD_ACCOUNT_MESSAGE =
1779                     PREFIX + "CANT_ADD_ACCOUNT_MESSAGE";
1780 
1781             /**
1782              * Notification shown when device owner silently installs a package.
1783              */
1784             public static final String PACKAGE_INSTALLED_BY_DO = PREFIX + "PACKAGE_INSTALLED_BY_DO";
1785 
1786             /**
1787              * Notification shown when device owner silently updates a package.
1788              */
1789             public static final String PACKAGE_UPDATED_BY_DO = PREFIX + "PACKAGE_UPDATED_BY_DO";
1790 
1791             /**
1792              * Notification shown when device owner silently deleted a package.
1793              */
1794             public static final String PACKAGE_DELETED_BY_DO = PREFIX + "PACKAGE_DELETED_BY_DO";
1795 
1796             /**
1797              * Title for dialog shown when user tries to open a work app when the work profile is
1798              * turned off, confirming that the user wants to turn on access to their
1799              * work apps.
1800              */
1801             public static final String UNLAUNCHABLE_APP_WORK_PAUSED_TITLE =
1802                     PREFIX + "UNLAUNCHABLE_APP_WORK_PAUSED_TITLE";
1803 
1804             /**
1805              * Text for dialog shown when user tries to open a work app when the work profile is
1806              * turned off, confirming that the user wants to turn on access to their
1807              * work apps.
1808              */
1809             public static final String UNLAUNCHABLE_APP_WORK_PAUSED_MESSAGE =
1810                     PREFIX + "UNLAUNCHABLE_APP_WORK_PAUSED_MESSAGE";
1811 
1812             /**
1813              * Notification title shown when work profile is credential encrypted and requires
1814              * the user to unlock before it's usable.
1815              */
1816             public static final String PROFILE_ENCRYPTED_TITLE = PREFIX + "PROFILE_ENCRYPTED_TITLE";
1817 
1818             /**
1819              * Notification detail shown when work profile is credential encrypted and requires
1820              * the user to unlock before it's usable.
1821              */
1822             public static final String PROFILE_ENCRYPTED_DETAIL =
1823                     PREFIX + "PROFILE_ENCRYPTED_DETAIL";
1824 
1825             /**
1826              * Notification message shown when work profile is credential encrypted and requires
1827              * the user to unlock before it's usable.
1828              */
1829             public static final String PROFILE_ENCRYPTED_MESSAGE =
1830                     PREFIX + "PROFILE_ENCRYPTED_MESSAGE";
1831 
1832             /**
1833              * Used to badge a string with "Work" for work profile content, e.g. "Work Email".
1834              * Accepts the string to badge as an argument.
1835              * <p>See {@link android.content.pm.PackageManager#getUserBadgedLabel}</p>
1836              */
1837             public static final String WORK_PROFILE_BADGED_LABEL =
1838                     PREFIX + "WORK_PROFILE_BADGED_LABEL";
1839         }
1840 
1841         /**
1842          * Class containing the identifiers used to update device management-related system strings
1843          * in the Dialer app.
1844          *
1845          * @hide
1846          */
1847         public static final class Telecomm {
1848 
Telecomm()1849             private Telecomm() {
1850             }
1851 
1852             private static final String PREFIX = "Telecomm.";
1853 
1854             /**
1855              * Missed call notification label, used when there's exactly one missed call from work
1856              * contact.
1857              */
1858             public static final String NOTIFICATION_MISSED_WORK_CALL_TITLE =
1859                     PREFIX + "NOTIFICATION_MISSED_WORK_CALL_TITLE";
1860         }
1861 
1862         /**
1863          * Class containing the identifiers used to update device management-related system strings
1864          * for the permission settings.
1865          */
1866         public static final class PermissionSettings {
1867 
PermissionSettings()1868             private PermissionSettings() {
1869             }
1870 
1871             private static final String PREFIX = "PermissionSettings.";
1872 
1873             /**
1874              * Summary of a permission switch in Settings when the background access is denied by an
1875              * admin.
1876              */
1877             public static final String BACKGROUND_ACCESS_DISABLED_BY_ADMIN_MESSAGE =
1878                     PREFIX + "BACKGROUND_ACCESS_DISABLED_BY_ADMIN_MESSAGE";
1879 
1880             /**
1881              * Summary of a permission switch in Settings when the background access is enabled by
1882              * an admin.
1883              */
1884             public static final String BACKGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE =
1885                     PREFIX + "BACKGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE";
1886 
1887             /**
1888              * Summary of a permission switch in Settings when the foreground access is enabled by
1889              * an admin.
1890              */
1891             public static final String FOREGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE =
1892                     PREFIX + "FOREGROUND_ACCESS_ENABLED_BY_ADMIN_MESSAGE";
1893 
1894             /**
1895              * Body of the notification shown to notify the user that the location permission has
1896              * been granted to an app, accepts app name as a param.
1897              */
1898             public static final String LOCATION_AUTO_GRANTED_MESSAGE =
1899                     PREFIX + "LOCATION_AUTO_GRANTED_MESSAGE";
1900         }
1901 
1902         /**
1903          * Class containing the identifiers used to update device management-related system strings
1904          * for the default app settings.
1905          */
1906         public static final class DefaultAppSettings {
1907 
DefaultAppSettings()1908             private DefaultAppSettings() {
1909             }
1910 
1911             private static final String PREFIX = "DefaultAppSettings.";
1912 
1913             /**
1914              * Title for settings page to show default apps for work.
1915              */
1916             public static final String WORK_PROFILE_DEFAULT_APPS_TITLE =
1917                     PREFIX + "WORK_PROFILE_DEFAULT_APPS_TITLE";
1918 
1919             /**
1920              * Summary indicating that a home role holder app is missing work profile support.
1921              */
1922             public static final String HOME_MISSING_WORK_PROFILE_SUPPORT_MESSAGE =
1923                     PREFIX + "HOME_MISSING_WORK_PROFILE_SUPPORT_MESSAGE";
1924         }
1925     }
1926 }
1927