https://source.android.google.cn/devices/automotive/users_accounts/multi_user
https://source.android.google.cn/devices/tech/admin/multi-user#android-automotive-multi-user
/** @hide A user id constant to indicate the "system" user of the device */
79 public static final @UserIdInt int USER_SYSTEM = 0;
// Create the system user
UserInfo system = new UserInfo(UserHandle.USER_SYSTEM, null, null, flags);
userId = getNextAvailableId();
@VisibleForTesting
205 static final int MIN_USER_ID = 10;
206 // We need to keep process uid within Integer.MAX_VALUE.
207 @VisibleForTesting
208 static final int MAX_USER_ID = Integer.MAX_VALUE / UserHandle.PER_USER_RANGE
for (int i = MIN_USER_ID; i < MAX_USER_ID; i++) {
3448 if (mUsers.indexOfKey(i) < 0 && !mRemovingUserIds.get(i)) {
3449 return i;
3450 }
3451 }
userInfo = new UserInfo(userId, name, null, flags);