diff options
author | Alex Johnston <acjohnston@google.com> | 2020-05-21 10:08:51 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-05-21 10:08:51 +0000 |
commit | fa6cf17648582959be9e1311244f88a3168be72c (patch) | |
tree | e59e04d6a2b84f46b38ca648edfa79c8bcd8b5f4 | |
parent | 6fd144dd1bd09e7e63dea0c7427100ab9233f6d5 (diff) | |
parent | 67623cf5566014310b19b7a08561276ee4ab3c6a (diff) |
Merge "setAutoTimeRequired disabled on managed profile" into rvc-dev
-rw-r--r-- | core/java/android/app/admin/DevicePolicyManager.java | 4 | ||||
-rw-r--r-- | services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/core/java/android/app/admin/DevicePolicyManager.java b/core/java/android/app/admin/DevicePolicyManager.java index 8073982ef745..c65064324c8c 100644 --- a/core/java/android/app/admin/DevicePolicyManager.java +++ b/core/java/android/app/admin/DevicePolicyManager.java @@ -6031,10 +6031,12 @@ public class DevicePolicyManager { * this API to enforce auto time will result in * {@link UserManager#DISALLOW_CONFIG_DATE_TIME} being set, while calling this API to lift * the requirement will result in {@link UserManager#DISALLOW_CONFIG_DATE_TIME} being cleared. + * From Android 11, this API can also no longer be called on a managed profile. * * @param admin Which {@link DeviceAdminReceiver} this request is associated with. * @param required Whether auto time is set required or not. - * @throws SecurityException if {@code admin} is not a device owner. + * @throws SecurityException if {@code admin} is not a device owner, not a profile owner or + * if this API is called on a managed profile. * @deprecated From {@link android.os.Build.VERSION_CODES#R}. Use {@link #setAutoTimeEnabled} * to turn auto time on or off and use {@link UserManager#DISALLOW_CONFIG_DATE_TIME} * to prevent the user from changing this setting. diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index 18c25c142113..c1735ffcdbb7 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -7973,6 +7973,9 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager { final int userHandle = UserHandle.getCallingUserId(); boolean requireAutoTimeChanged = false; synchronized (getLockObject()) { + if (isManagedProfile(userHandle)) { + throw new SecurityException("Managed profile cannot set auto time required"); + } ActiveAdmin admin = getActiveAdminForCallerLocked(who, DeviceAdminInfo.USES_POLICY_PROFILE_OWNER); if (admin.requireAutoTime != required) { |