diff options
5 files changed, 15 insertions, 3 deletions
diff --git a/api/system-current.txt b/api/system-current.txt index d73d3a726e35..7305e2879fd7 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -916,6 +916,7 @@ package android.app.admin { field public static final int PROVISIONING_TRIGGER_QR_CODE = 2; // 0x2 field public static final int PROVISIONING_TRIGGER_UNSPECIFIED = 0; // 0x0 field public static final int STATE_USER_PROFILE_COMPLETE = 4; // 0x4 + field public static final int STATE_USER_PROFILE_FINALIZED = 5; // 0x5 field public static final int STATE_USER_SETUP_COMPLETE = 2; // 0x2 field public static final int STATE_USER_SETUP_FINALIZED = 3; // 0x3 field public static final int STATE_USER_SETUP_INCOMPLETE = 1; // 0x1 diff --git a/core/java/android/app/admin/DevicePolicyManager.java b/core/java/android/app/admin/DevicePolicyManager.java index ad902a028f13..054e8429ff86 100644 --- a/core/java/android/app/admin/DevicePolicyManager.java +++ b/core/java/android/app/admin/DevicePolicyManager.java @@ -1830,6 +1830,15 @@ public class DevicePolicyManager { public static final int STATE_USER_PROFILE_COMPLETE = 4; /** + * Management setup on a managed profile. + * <p>This is used as an intermediate state after {@link #STATE_USER_PROFILE_COMPLETE} once the + * work profile has been created. + * @hide + */ + @SystemApi + public static final int STATE_USER_PROFILE_FINALIZED = 5; + + /** * @hide */ @IntDef(prefix = { "STATE_USER_" }, value = { @@ -1837,7 +1846,8 @@ public class DevicePolicyManager { STATE_USER_SETUP_INCOMPLETE, STATE_USER_SETUP_COMPLETE, STATE_USER_SETUP_FINALIZED, - STATE_USER_PROFILE_COMPLETE + STATE_USER_PROFILE_COMPLETE, + STATE_USER_PROFILE_FINALIZED }) @Retention(RetentionPolicy.SOURCE) public @interface UserProvisioningState {} diff --git a/non-updatable-api/system-current.txt b/non-updatable-api/system-current.txt index 5822dc1673d9..e871814ab9a6 100644 --- a/non-updatable-api/system-current.txt +++ b/non-updatable-api/system-current.txt @@ -864,6 +864,7 @@ package android.app.admin { field public static final int PROVISIONING_TRIGGER_QR_CODE = 2; // 0x2 field public static final int PROVISIONING_TRIGGER_UNSPECIFIED = 0; // 0x0 field public static final int STATE_USER_PROFILE_COMPLETE = 4; // 0x4 + field public static final int STATE_USER_PROFILE_FINALIZED = 5; // 0x5 field public static final int STATE_USER_SETUP_COMPLETE = 2; // 0x2 field public static final int STATE_USER_SETUP_FINALIZED = 3; // 0x3 field public static final int STATE_USER_SETUP_INCOMPLETE = 1; // 0x1 diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index bf76e66c2451..745d6452cdac 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -7887,7 +7887,7 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager { // Current user has a managed-profile, but current user is not managed, so // rather than moving to finalized state, go back to unmanaged once // profile provisioning is complete. - if (newState == DevicePolicyManager.STATE_USER_UNMANAGED) { + if (newState == DevicePolicyManager.STATE_USER_PROFILE_FINALIZED) { return; } break; diff --git a/services/tests/servicestests/src/com/android/server/devicepolicy/DevicePolicyManagerTest.java b/services/tests/servicestests/src/com/android/server/devicepolicy/DevicePolicyManagerTest.java index 30b1b3e78ad3..c4f7b9547277 100644 --- a/services/tests/servicestests/src/com/android/server/devicepolicy/DevicePolicyManagerTest.java +++ b/services/tests/servicestests/src/com/android/server/devicepolicy/DevicePolicyManagerTest.java @@ -2814,7 +2814,7 @@ public class DevicePolicyManagerTest extends DpmTestBase { exerciseUserProvisioningTransitions(CALLER_USER_HANDLE, DevicePolicyManager.STATE_USER_PROFILE_COMPLETE, - DevicePolicyManager.STATE_USER_UNMANAGED); + DevicePolicyManager.STATE_USER_PROFILE_FINALIZED); } public void testSetUserProvisioningState_managedProfileFromSetupWizard_managedProfile() |