From 9b5fe44105a8073656303c8dba4e8a0e451fd1f1 Mon Sep 17 00:00:00 2001 From: Richard MacGregor Date: Wed, 8 Jan 2025 10:04:27 -0800 Subject: Add MANAGE_DEFAULT_APPLICATIONS to DEVICE_POLICY_MANAGEMENT role Allows DEVICE_POLICY_MANAGEMENT to modify/query active user for cross-user roles Bug: 387560997 Change-Id: Iaaed754786ed72005a2954d08896f0fd3462973a Flag: com.android.permission.flags.cross_user_role_enabled Relnote: N/A Test: builds --- .../java/com/android/role/controller/model/AppOp.java | 5 +++-- .../java/com/android/role/controller/model/Permission.java | 5 +++-- .../role-controller/java/com/android/role/controller/model/Role.java | 4 ++-- 3 files changed, 8 insertions(+), 6 deletions(-) (limited to 'PermissionController/role-controller/java') diff --git a/PermissionController/role-controller/java/com/android/role/controller/model/AppOp.java b/PermissionController/role-controller/java/com/android/role/controller/model/AppOp.java index 56c4944a0..99145c747 100644 --- a/PermissionController/role-controller/java/com/android/role/controller/model/AppOp.java +++ b/PermissionController/role-controller/java/com/android/role/controller/model/AppOp.java @@ -26,6 +26,7 @@ import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; import com.android.modules.utils.build.SdkLevel; +import com.android.role.controller.util.RoleFlags; import com.android.role.controller.util.PackageUtils; import java.util.Objects; @@ -137,8 +138,8 @@ public class AppOp { return false; } return Build.VERSION.SDK_INT >= mMinSdkVersion - // Workaround to match the value 35 for V in roles.xml before SDK finalization. - || (mMinSdkVersion == 35 && SdkLevel.isAtLeastV()); + // Workaround to match the value 36 for B in roles.xml before SDK finalization. + || (mMinSdkVersion == 36 && RoleFlags.isAtLeastB()); } private boolean isAvailableAsUser(@NonNull String packageName, diff --git a/PermissionController/role-controller/java/com/android/role/controller/model/Permission.java b/PermissionController/role-controller/java/com/android/role/controller/model/Permission.java index 05b19ff94..889f5263d 100644 --- a/PermissionController/role-controller/java/com/android/role/controller/model/Permission.java +++ b/PermissionController/role-controller/java/com/android/role/controller/model/Permission.java @@ -26,6 +26,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.modules.utils.build.SdkLevel; +import com.android.role.controller.util.RoleFlags; import com.android.role.controller.util.UserUtils; import java.util.Objects; @@ -97,8 +98,8 @@ public class Permission { return false; } if (Build.VERSION.SDK_INT >= mMinSdkVersion - // Workaround to match the value 35 for V in roles.xml before SDK finalization. - || (mMinSdkVersion == 35 && SdkLevel.isAtLeastV())) { + // Workaround to match the value 36 for B in roles.xml before SDK finalization. + || (mMinSdkVersion == 36 && RoleFlags.isAtLeastB())) { return true; } if (Build.VERSION.SDK_INT >= mOptionalMinSdkVersion) { diff --git a/PermissionController/role-controller/java/com/android/role/controller/model/Role.java b/PermissionController/role-controller/java/com/android/role/controller/model/Role.java index 1d49b3c1a..9773b93a9 100644 --- a/PermissionController/role-controller/java/com/android/role/controller/model/Role.java +++ b/PermissionController/role-controller/java/com/android/role/controller/model/Role.java @@ -502,8 +502,8 @@ public class Role { return false; } return (Build.VERSION.SDK_INT >= mMinSdkVersion - // Workaround to match the value 35 for V in roles.xml before SDK finalization. - || (mMinSdkVersion == 35 && SdkLevel.isAtLeastV())) + // Workaround to match the value 36 for B in roles.xml before SDK finalization. + || (mMinSdkVersion == 36 && RoleFlags.isAtLeastB())) && Build.VERSION.SDK_INT <= mMaxSdkVersion; } -- cgit v1.2.3-59-g8ed1b