Lock 锁车门窗模块 · 知识库

本知识库由 4 个 Explore Agent 并行调研 + 源码对抗验证产出(2026-07-12),4 个 Agent 全部成功,结论高度互证。 Lock 是 5 个车控模块中 Controller 最多(40+)、信号最多的,遮阳帘天幕系统 + 车顶安全锁密码 + DoorUnLockActivity 单独成篇(03)。

模块定位

Lock 模块(settingsPage/micarLockSettings)是「门窗锁」设置页,入口 VehicleLockSettingsFragment(⚠️在 miauto.vehicle 包,不在 lock)。

9 大子系统:①电动门(模式/开启角度/4门开合/吸合/把手)②童锁+车窗锁 ③锁车关窗 ④鸣笛/个性音效 ⑤迎宾(光毯/尾翼/灯效入口)⑥盖板(前备箱/后备箱/油箱盖)⑦遮阳帘天幕(5 类)⑧升降车顶+安全锁密码 ⑨门锁逻辑(离车/P挡/接近/解锁模式/通风)。

关键认知(对抗验证纠正)

常见误解源码真相
入口 Fragment 在 lock 包VehicleLockSettingsFragment + 3 核心 Toggle/Tab Controller 在 miauto.vehicle
迎宾光毯/尾翼在 Lock 模块的 XMLWelcomeCarpetController/WelcomeWithTailSwingController 定义在 Lock,但被 Light 模块 XML 引用(跨模块复用)
升降车顶安全锁是车信号RoofSafetyLockControllerSettings.Global(非车信号)+ MIS 安全服务联动
DoorUnLockActivity 由用户点击触发✅ 由 android.settings.DOOR_UNLOCK Intent 拉起(外部系统在车门解锁失败时弹),8 秒倒计时,独立于 Controller
DoorAndWindowLockRightFragmentController 有逻辑空壳(仅 TAG,逻辑在 Fragment)
童锁 Controller 和车门 Controller 一类VehicleLockToggleCtrl(童锁+车窗锁状态) vs VehicleDoorToggleCtrl(4 门电动开合动作),同基类不同业务
调光天幕是连续滑杆Tab 两档(LEVEL1 遮光/LEVEL5 透明),500ms 延时校验防中间态闪动
SUN_SHADE_CURRENT_POSN 是当前位置❌ 命名陷阱,底层是 SUNSHADE_TARGET_POSITION目标位置
遮阳帘行车不可调(速度保护)✅ 遮阳帘无速度保护(行车可调),仅车顶帐篷有 P 挡保护
锁车折叠后视镜在 Lock 模块MIRROR_FOLD_WHEN_LOCK 在 LockCtrl 域,但 UI 入口在 VehicleBody 模块(跨模块信号共享)
盖板开关是持续信号COVER_STATE 回弹 1000ms(脉冲式控制,下发后 1 秒回中性态)

信号域结构(重要)

Lock 涉及 3 个封装 Ctrl 域 + 大量底层直引

  • LockCtrl(13 个):逻辑聚合域,跨 Door/Hvac/Window/MirrorControl/Body/Light 6 个真实域(把”锁车相关”归集)
  • DoorCtrl(17 个):门锁/盖板/加油口/高度
  • WindowCtrl(12 个):车窗锁/调光天幕/遮阳帘
  • 底层直引 mi.car.config.*:很多 Controller 绕过封装直引,特别是 Body.POWER_LIFTING_ROOF_*(升降车顶 18 信号)、Door.POWER_OPERATED_DOOR_*(电动门)

车型代号(同 Light,来自 DeviceUtil)

常量平台Lock 相关
DEVICE_KUNLUNKunLun童锁自定义、车顶帐篷、升降车顶、E4U3 分水岭
DEVICE_MX11(TYPE_MX11)MX11电动前后备箱高度限值
DEVICE_WATTModena
DEVICE_KEPLERModena-26A

关键阶段Kunlun E4U3(天窗遮阳帘→后排遮阳帘、车顶帐篷→升降车顶大组件);26RC11(童锁自定义透出)。

文档导航

文档内容
01-代码结构与子系统入口 Fragment、11 Category XML、40+ Controller 逐解、继承层级图
02-信号梳理3 Ctrl 域全量 + 底层直引 + Body.POWER_LIFTING_ROOF + 枚举值 + 中间态
03-遮阳帘天幕与车顶密码专题5 类顶部覆盖物 + 校准流程 + 车顶安全锁密码 + DoorUnLockActivity
04-功能差异与对抗验证30+ 功能、车型差异矩阵、配置字编号、不可用原因、对抗记录

关键文件索引

类型路径
入口 FragmentmicarLockSettings/.../vehicle/VehicleLockSettingsFragment.java
主 XML.../res/xml/miauto_vehicle_lock_ctrl_settings_fragment.xml
右栏.../lock/DoorAndWindowLockRightFragment.kt(静态车模 + 升降顶显示态信号)
车门解锁弹窗.../activity/DoorUnLockActivity.java(Intent 拉起)
车顶密码.../roof/password/(RoofSafetyLock/RoofPassword/RoofPasswordFragment)
MIS 安全服务.../mis/RoofSecurityNotifier.kt + RoofSecurityHandler.kt
信号映射.../miauto/{Door,Lock,ElectricReleaseHeadGate}VehiclePropertysMap.java
信号域定义base/settingsBaseLib/.../vehicle/MiCarPropertyIds.java(LockCtrl:875 / DoorCtrl:160 / WindowCtrl:124)