前面几篇文章介绍了多用户和多屏相关的 Manager 和 Service。上一篇文章最后虽然车内乘员
都根据配置有自己的对应屏幕
,但默认情况下,所有车内乘员
依然使用的是当前主用户(司机用户),这一篇我们继续放下看一下用户的创建与分配。
一、用户创建分配
1、创建用户
对于创建用户及分配用户的方法均在 CarUserService 中。
源码位置:/packages/services/Car/service/src/com/android/car/user/CarUserService.java
onUserSwitching
private void onUserSwitching(@UserIdInt int fromUserId, @UserIdInt int toUserId) {TimingsTraceLog t = new TimingsTraceLog(TAG_USER, Trace.TRACE_TAG_SYSTEM_SERVER);t.traceBegin("onUserSwitching-" + toUserId);// 如果CarUserService没有请求用户Switch,则切换HAL用户notifyHalLegacySwitch(fromUserId, toUserId);mCarUserManagerHelper.setLastActiveUser(toUserId);if (mLastPassengerId != UserHandle.USER_NULL) {stopPassengerInternal(mLastPassengerId, false);}// 1.config.xml中的配置开关enableP