Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 61899e59 authored by Adam Bookatz's avatar Adam Bookatz
Browse files

Remove UM.isUserOfType(userHandle) API

isUserOfType is @UserHandleAware, so there is no need for the version
that takes in a userHandle.
(See ag/9259675)

Test: atest UserManagerTest#testProfileTypeInformation
Bug: 139914710
Change-Id: I283900a6c0571c2dd1cdfd96fe7413f32ddb7adf
parent 628aeec3
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -8962,7 +8962,6 @@ package android.os {
    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isSameProfileGroup(@NonNull android.os.UserHandle, @NonNull android.os.UserHandle);
    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.GET_ACCOUNTS_PRIVILEGED}) public boolean isUserNameSet();
    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isUserOfType(@NonNull String);
    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isUserOfType(@NonNull android.os.UserHandle, @NonNull String);
    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public boolean isUserUnlockingOrUnlocked(@NonNull android.os.UserHandle);
    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean removeUser(@NonNull android.os.UserHandle);
    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap) throws android.os.UserManager.UserOperationException;
+3 −22
Original line number Diff line number Diff line
@@ -1775,9 +1775,10 @@ public class UserManager {
    }

    /**
     * Returns whether the context user's user is of the given user type, such as
     * {@link UserManager#USER_TYPE_FULL_GUEST}.
     * Returns whether the context user is of the given user type.
     *
     * @param userType the name of the user's user type, e.g.
     *                 {@link UserManager#USER_TYPE_PROFILE_MANAGED}.
     * @return true if the user is of the given user type.
     * @hide
     */
@@ -1792,26 +1793,6 @@ public class UserManager {
        }
    }

    /**
     * Returns whether the given user is of the given user type, such as
     * {@link UserManager#USER_TYPE_FULL_GUEST}.
     *
     * @param userHandle the user handle of the user whose type is being requested.
     * @param userType the name of the user's user type, e.g.
     *                 {@link UserManager#USER_TYPE_PROFILE_MANAGED}.
     * @return true if the userHandle user is of type userType
     * @hide
     */
    @SystemApi
    @RequiresPermission(android.Manifest.permission.MANAGE_USERS)
    public boolean isUserOfType(@NonNull UserHandle userHandle, @NonNull String userType) {
        try {
            return mService.isUserOfType(userHandle.getIdentifier(), userType);
        } catch (RemoteException re) {
            throw re.rethrowFromSystemServer();
        }
    }

    /**
     * Returns whether the user type is a
     * {@link UserManager#USER_TYPE_PROFILE_MANAGED managed profile}.
+6 −8
Original line number Diff line number Diff line
@@ -336,9 +336,6 @@ public final class UserManagerTest {
        assertThat(userInfo).isNotNull();
        final int userId = userInfo.id;

        UserManager userManagerForUser = (UserManager) mContext.createPackageContextAsUser(
                "android", 0, asHandle(userId)).getSystemService(Context.USER_SERVICE);

        assertThat(mUserManager.hasBadge(userId)).isEqualTo(userTypeDetails.hasBadge());
        assertThat(mUserManager.getUserIconBadgeResId(userId))
                .isEqualTo(userTypeDetails.getIconBadge());
@@ -346,17 +343,18 @@ public final class UserManagerTest {
                .isEqualTo(userTypeDetails.getBadgePlain());
        assertThat(mUserManager.getUserBadgeNoBackgroundResId(userId))
                .isEqualTo(userTypeDetails.getBadgeNoBackground());
        assertThat(mUserManager.isUserOfType(asHandle(userId), userTypeDetails.getName()))
                .isTrue();
        assertThat(userManagerForUser.isProfile()).isEqualTo(userTypeDetails.isProfile());
        assertThat(userManagerForUser.isUserOfType(asHandle(userId), userTypeDetails.getName()))
                .isTrue();

        final int badgeIndex = userInfo.profileBadge;
        assertThat(mUserManager.getUserBadgeColor(userId)).isEqualTo(
                Resources.getSystem().getColor(userTypeDetails.getBadgeColor(badgeIndex), null));
        assertThat(mUserManager.getBadgedLabelForUser("Test", asHandle(userId))).isEqualTo(
                Resources.getSystem().getString(userTypeDetails.getBadgeLabel(badgeIndex), "Test"));

        // Test @UserHandleAware methods
        final UserManager userManagerForUser = UserManager.get(mContext.createPackageContextAsUser(
                "android", 0, asHandle(userId)));
        assertThat(userManagerForUser.isUserOfType(userTypeDetails.getName())).isTrue();
        assertThat(userManagerForUser.isProfile()).isEqualTo(userTypeDetails.isProfile());
    }

    // Make sure only max managed profiles can be created