summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Antoan Angelov <arangelov@google.com> 2020-10-21 20:16:46 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2020-10-21 20:16:46 +0000
commit9810e057e934d7c49ab95bc7691870d143c3130c (patch)
tree5baa6e801d3979ac1c2af276a5aecef1961b48de
parent5746484a09cbb6ddd895108b060fd928c8082c28 (diff)
parentc0006519991a33339c22cfeef1a006a71c8a720d (diff)
Merge "Add STATE_USER_PROFILE_FINALIZED as an additional user state"
-rw-r--r--api/system-current.txt1
-rw-r--r--core/java/android/app/admin/DevicePolicyManager.java12
-rw-r--r--non-updatable-api/system-current.txt1
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java2
-rw-r--r--services/tests/servicestests/src/com/android/server/devicepolicy/DevicePolicyManagerTest.java2
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()