From f4a0efd1a0ec4a4f630140ee8070d19cc76db448 Mon Sep 17 00:00:00 2001 From: Antoan Angelov Date: Mon, 26 Oct 2020 16:55:41 +0000 Subject: [PATCH] Revert "Revert "Add STATE_USER_PROFILE_FINALIZED as an additional user state"" This reverts commit 7599f05ceff27c9a81195199f7befb6d15d45c3c. Reason for revert: This should be merged as part of the other pending ManagedProvisioning changes. Bug: 161402545 Change-Id: I9ca9327540385db5b605a05ed6d0f8873cfa0de6 --- api/system-current.txt | 1 + core/java/android/app/admin/DevicePolicyManager.java | 12 +++++++++++- non-updatable-api/system-current.txt | 1 + .../devicepolicy/DevicePolicyManagerService.java | 2 +- .../server/devicepolicy/DevicePolicyManagerTest.java | 2 +- 5 files changed, 15 insertions(+), 3 deletions(-) diff --git a/api/system-current.txt b/api/system-current.txt index 2e53058f96d25..448735acdccc2 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -912,6 +912,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 b74e18b099cea..eefbadbdbd0fc 100644 --- a/core/java/android/app/admin/DevicePolicyManager.java +++ b/core/java/android/app/admin/DevicePolicyManager.java @@ -1829,6 +1829,15 @@ public class DevicePolicyManager { @SystemApi public static final int STATE_USER_PROFILE_COMPLETE = 4; + /** + * Management setup on a managed profile. + *

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 */ @@ -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 75e038be1a2b9..b7398212089b1 100644 --- a/non-updatable-api/system-current.txt +++ b/non-updatable-api/system-current.txt @@ -860,6 +860,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 36ff97446349a..da45f90287a41 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -7793,7 +7793,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 631b4d48e9f26..b664bcdde56f9 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()