10 - 落地路线图

本篇是全库的执行总纲:把 01~09 的结论收敛成分团队、分阶段、可度量、可排期的行动清单。配套 09 选型对比 阅读。

核心原则:座舱 App 团队 80% 自研+开源,20% 评估商业 SaaS;绝不采购 Vector/dSPACE 重型工具(那是整车电控团队的)。


1. 总览:三团队 × 三阶段矩阵

座舱 App(MiCarSettings)平台(VHAL/SOA/DDS)整车电控
P0 立刻(0 成本)cmd car_service 按名字;应用层 mock;DDS Mock publisher;COVESA VSS;EnergyUtils 单测VTS 对齐;推动 micar dump 标准化(采购周期长,先立项)
P1 中期(开源主导)Cuttlefish 离线底座;IVehicleControl 接口;car-test-lib;LogPropMonitor 升级;cantools 回放vsomeip 评估;Cuttlefish CIVector CANoe+vTESTstudio
P2 长期(战略)Mi Car Signal Broker;Repository+Hilt;GRPCVehicleHardware云 SIL 平台dSPACE HIL + ETAS INCA

2. 座舱 App 团队(MiCarSettings)行动卡

🟢 P0:立刻可做(0 成本,1-2 周)

#动作解决痛点依据
1团队 SOP 从 --mock_from_car 切到 cmd car_service <名字> 注入P1/P502
2用起来项目已有的应用层异常 mocksettings put system mock_vehicle_property_env 4 + mock_vehicle_property_id(写进团队调试文档)P601 §3
3自写 DDS Mock publisher(复用 nddsjava.jar + DataWriter,~50 行 Kotlin,放 src/debug/P1005
4采纳 COVESA VSS 命名作为内部信号命名标准P1 根因08
5EnergyUtils(40+ 纯函数) 补 JVM 单测 + 加 KoverP9 起步07 Phase 0

🟡 P1:中期(开源主导,1-3 月)

#动作解决痛点依据
6手写 IVehicleControl 接口(<100 行),SettingsCarPropertyManager@VisibleForTesting 构造参数,解锁信号逻辑单测P907 Phase 1
7自建”小米定制 Cuttlefish”离线底座:从小米 VHAL AIDL 生成 vhalconfig/xiaomi.json(3791 prop)+ MiCarSettings 平台签名预装P704 §7
8升级 LogPropMonitor.py 为带时间戳精确回放器;真车 candump -l 录制 + PC 回放P806/03
9抄 AOSP car-test-lib(14 个 Java 文件)引入,FakeCar 覆盖 VHAL 链路单测P907 Phase 2
10推动 micar vendor VHAL 把自定义 propId 注册进 HalPropertyDebugUtils(按名字注入覆盖 vendor prop)P1 根治02 §3

🔴 P2:长期战略(3-6 月+)

#动作解决痛点依据
11自研 “Mi Car Signal Broker”(参考 RemotiveLabs + VSS),统一现有 4 套零散工具(CarDemo/LogPropMonitor/vc_client_mock/dumpsys)P7/P8 根治08 §5
12评估升级 Android 16 GRPCVehicleHardware——真机 VHAL 变代理,开发机 gRPC server 当信号源P7 根治02 §7
13新代码逐步引入 Repository 接口 + Hilt 构造注入(老代码保留),建立应用层 CI 回归P9 根治07
14接触评估 RemotiveLabs(商业 SaaS)或采购其架构方案做内部参考P7/P8 跃迁08 §5

3. 平台团队(VHAL/SOA/DDS 中间件)行动卡

阶段动作
P0自研 VHAL 测试套件对齐 AOSP VTS for Automotive;推动 micar vendor dump 标准化(支持 --help + 名字 + 16 进制双模式)
P1评估 vsomeip + CommonAPI 作为 DDS 之外备选;接入 Cuttlefish 做云端 CI;与 RTI 探讨 HIL/SIL 集成
P2中心化部署 Cuttlefish 到内部机房(避免 GCE 跨境);引入 GRPCVehicleHardware 做信号源中心化

4. 整车电控团队采购清单(无可替代)

#工具用途预算量级
1Vector CANoe + vTESTstudio总线分析/仿真/测试自动化单套几十万 RMB
2ETAS INCAECU 标定需询价
3dSPACE SCALEXIO HIL(或国产恒润/北汇 PRAXLINK)实时 HIL 仿真百万 RMB 级
4DaVinci Configurator + MICROSAR BSW(如用 AUTOSAR)BSW 配置百万级
5dSPACE AURELION(智驾)/ 51World(国产场景)传感器/场景仿真千万级(智驾)

⚠️ MiCarSettings 团队不在本清单范围——这些工具跨不到 Android Framework 层,对座舱 App 是误购。


5. 里程碑与度量

里程碑度量指标目标
P0 完成团队调试命令切换率;应用层 mock 使用率>80% 用 cmd car_service 按名字
P1 完成settingsVehicleLib 单测覆盖率;离线 CF 可用覆盖率 0→50%;CF 跑通核心页
P2 完成CI 信号回归用例数;等车时间CI 每日回归;等车 天→秒
长期业界成熟度层级L2-L3 → L4-L5(对标 Volvo)

6. 关键风险与依赖

风险影响对策
3791 prop 定义表缺失Cuttlefish vhalconfig JSON 生成不出必须从小米 VHAL 团队拿完整 prop 定义——最大依赖
priv-app 私有 API 漂移CF 镜像需 cherry-pick 小米 car-builtin 补丁CF manifest 直接 fork 小米整车 manifest
AGP 7.2 约束JUnit5 instrumentation/Kover 设备覆盖不可用Phase 0-2 锁定 JVM 单测;升级 AGP 评估
DDS Security 启用开源 DDS 互通方案全失效持续跟踪 /data/vendor/rtidds/SOASecurityEnable.cfg
arm-only native libCF 主力 x86_64编译 arm64 CF(实验性)或临时砍除
Hilt 全量改造280+ 文件、回归风险务实派:手写 IVehicleControl 接口 <100 行替代

7. 一页纸总结

现在就做(0 成本)cmd car_service 按名字注入 + 应用层 mock_vehicle_property_env + DDS Mock publisher + COVESA VSS + EnergyUtils 单测。

本季度(开源主导)IVehicleControl 接口解锁单测 + 小米定制 Cuttlefish 离线底座 + LogPropMonitor 升级回放 + car-test-lib。

本年度(战略):Mi Car Signal Broker + Android 16 GRPCVehicleHardware + Repository+Hilt CI 回归。

绝不:座舱 App 团队采购 Vector/dSPACE(交给整车电控团队)。

目标:把小米从业界 L2-L3 推到 L4-L5(对标 Volvo/P3),等车时间从天级降到秒级,信号 UI 测试覆盖率提升一个量级。