Skip to content

Commit f811656

Browse files
committed
Shows user serial when a new user is created.
Currently it was showing the internal user id, but other commands (like switch-user and remove-user) uses the (public) serial id. Bug: 171350084 Test: adb shell dumpsys activity service --user 0 com.afwsamples.testdpc create-user Change-Id: I326058d7d7c4781d60544791170c9170a17337c2 (cherry picked from commit 0c02a3ca936f5574c81c94d132dc3db1ae5ae72b)
1 parent 44655ee commit f811656

File tree

3 files changed

+18
-2
lines changed

3 files changed

+18
-2
lines changed

app/src/main/java/com/afwsamples/testdpc/DevicePolicyManagerGateway.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,17 @@ void createAndManageUser(@Nullable String name, int flags,
6969
*/
7070
void setUserIcon(@NonNull Bitmap icon, @NonNull Consumer<Void> onSuccess, @NonNull Consumer<Exception> onError);
7171

72-
/** @see {@link android.os.UserManager#getUserForSerialNumber(long)}.*/
72+
/**
73+
* @see {@link android.os.UserManager#getUserForSerialNumber(long)}.
74+
*/
7375
@Nullable
7476
UserHandle getUserHandle(long serialNumber);
7577

78+
/**
79+
* @see {@link android.os.UserManager#getSerialNumber(UserHandle)}.
80+
*/
81+
long getSerialNumber(@NonNull UserHandle user);
82+
7683
/**
7784
* See {@link android.app.admin.DevicePolicyManager#removeUser(android.content.ComponentName, UserHandle)}.
7885
*/

app/src/main/java/com/afwsamples/testdpc/DevicePolicyManagerGatewayImpl.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,11 @@ public UserHandle getUserHandle(long serialNumber) {
121121
return mUserManager.getUserForSerialNumber(serialNumber);
122122
}
123123

124+
@Override
125+
public long getSerialNumber(UserHandle user) {
126+
return mUserManager.getSerialNumberForUser(user);
127+
}
128+
124129
@Override
125130
public void removeUser(UserHandle userHandle, Consumer<Void> onSuccess,
126131
Consumer<Exception> onError) {

app/src/main/java/com/afwsamples/testdpc/ShellCommand.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,7 @@ private void createUser() {
277277
Log.i(TAG, "createUser(): name=" + name + ", flags=" + flags);
278278

279279
mDevicePolicyManagerGateway.createAndManageUser(name, flags,
280-
(u) -> onSuccess("User created: %s", u),
280+
(u) -> onSuccess("User created: %s", toString(u)),
281281
(e) -> onError(e, "Error creating user %s", name));
282282
}
283283

@@ -546,6 +546,10 @@ private void print(String name, Collection<String> collection) {
546546
collection.forEach((s) -> mWriter.printf(" %s\n", s));
547547
}
548548

549+
private String toString(UserHandle user) {
550+
return user.toString() + " serial=" + mDevicePolicyManagerGateway.getSerialNumber(user);
551+
}
552+
549553
private UserHandle getUserHandleArg(int index) {
550554
// TODO(b/171350084): check args
551555
long serialNumber = Long.parseLong(mArgs[index]);

0 commit comments

Comments
 (0)