Loading services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +12 −13 Original line number Diff line number Diff line Loading @@ -11113,7 +11113,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { || hasCallingOrSelfPermission(permission.INTERACT_ACROSS_USERS); } private boolean canUserUseLockTaskLocked(int userId) { private boolean canDPCManagedUserUseLockTaskLocked(int userId) { if (isUserAffiliatedWithDeviceLocked(userId)) { return true; } Loading @@ -11123,13 +11123,10 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { return false; } if (!isPermissionCheckFlagEnabled() && !isPolicyEngineForFinanceFlagEnabled()) { final ComponentName profileOwner = getProfileOwnerAsUser(userId); if (profileOwner == null) { return false; } } // Managed profiles are not allowed to use lock task if (isManagedProfile(userId)) { return false; Loading @@ -11142,7 +11139,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { final int userId = caller.getUserId(); enforceCanQuery(MANAGE_DEVICE_POLICY_LOCK_TASK, caller.getPackageName(), userId); if (!canUserUseLockTaskLocked(userId)) { if ((isDeviceOwner(caller) || isProfileOwner(caller)) && !canDPCManagedUserUseLockTaskLocked(userId)) { throw new SecurityException("User " + userId + " is not allowed to use lock task"); } } Loading @@ -11158,7 +11156,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { caller.getPackageName(), userId ); if (!canUserUseLockTaskLocked(userId)) { if ((isDeviceOwner(caller) || isProfileOwner(caller)) && !canDPCManagedUserUseLockTaskLocked(userId)) { throw new SecurityException("User " + userId + " is not allowed to use lock task"); } return enforcingAdmin; Loading @@ -11169,7 +11168,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { || isDefaultDeviceOwner(caller) || isFinancedDeviceOwner(caller)); final int userId = caller.getUserId(); if (!canUserUseLockTaskLocked(userId)) { if (!canDPCManagedUserUseLockTaskLocked(userId)) { throw new SecurityException("User " + userId + " is not allowed to use lock task"); } } Loading Loading @@ -15101,7 +15100,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { final List<UserInfo> userInfos = mUserManager.getAliveUsers(); for (int i = userInfos.size() - 1; i >= 0; i--) { int userId = userInfos.get(i).id; if (canUserUseLockTaskLocked(userId)) { if (canDPCManagedUserUseLockTaskLocked(userId)) { continue; } Loading
services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +12 −13 Original line number Diff line number Diff line Loading @@ -11113,7 +11113,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { || hasCallingOrSelfPermission(permission.INTERACT_ACROSS_USERS); } private boolean canUserUseLockTaskLocked(int userId) { private boolean canDPCManagedUserUseLockTaskLocked(int userId) { if (isUserAffiliatedWithDeviceLocked(userId)) { return true; } Loading @@ -11123,13 +11123,10 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { return false; } if (!isPermissionCheckFlagEnabled() && !isPolicyEngineForFinanceFlagEnabled()) { final ComponentName profileOwner = getProfileOwnerAsUser(userId); if (profileOwner == null) { return false; } } // Managed profiles are not allowed to use lock task if (isManagedProfile(userId)) { return false; Loading @@ -11142,7 +11139,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { final int userId = caller.getUserId(); enforceCanQuery(MANAGE_DEVICE_POLICY_LOCK_TASK, caller.getPackageName(), userId); if (!canUserUseLockTaskLocked(userId)) { if ((isDeviceOwner(caller) || isProfileOwner(caller)) && !canDPCManagedUserUseLockTaskLocked(userId)) { throw new SecurityException("User " + userId + " is not allowed to use lock task"); } } Loading @@ -11158,7 +11156,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { caller.getPackageName(), userId ); if (!canUserUseLockTaskLocked(userId)) { if ((isDeviceOwner(caller) || isProfileOwner(caller)) && !canDPCManagedUserUseLockTaskLocked(userId)) { throw new SecurityException("User " + userId + " is not allowed to use lock task"); } return enforcingAdmin; Loading @@ -11169,7 +11168,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { || isDefaultDeviceOwner(caller) || isFinancedDeviceOwner(caller)); final int userId = caller.getUserId(); if (!canUserUseLockTaskLocked(userId)) { if (!canDPCManagedUserUseLockTaskLocked(userId)) { throw new SecurityException("User " + userId + " is not allowed to use lock task"); } } Loading Loading @@ -15101,7 +15100,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { final List<UserInfo> userInfos = mUserManager.getAliveUsers(); for (int i = userInfos.size() - 1; i >= 0; i--) { int userId = userInfos.get(i).id; if (canUserUseLockTaskLocked(userId)) { if (canDPCManagedUserUseLockTaskLocked(userId)) { continue; }