AutoPilot 辅助驾驶模块 · 知识库

本知识库由 4 个 Explore Agent 并行调研 + 源码对抗验证产出(2026-07-12)。AutoPilot 是 ADAS 法规差异最大的模块(60+ Controller,3 地区 XML),也是 5 个车控模块的最后一个。

模块定位

AutoPilot 模块(settingsPage/settingsAutoPilot,包 com.android.micar.settings.autopilot)是「辅助驾驶」设置页,覆盖 NOA 领航/泊车/紧急制动/车道/后向安全/限速全套 ADAS。

ADAS 缩写全表(速查)

缩写全称功能
NOANavigate on AutoPilot领航辅助(高速/全域 CNOA)
ACC/LCCAdaptive Cruise / Lane Centering自适应巡航/车道居中
APA/AVP/HPPAuto Park / Auto Valet / Home zone Pilot Park自动泊车/代客泊车/记忆泊车
AEB/FCWAutonomous Emergency Braking / Forward Collision Warning自动紧急制动/前向碰撞预警
AESAutonomous Emergency Steering自动紧急转向
LAEB/RAEBLow-speed/Rear AEB低速前/后向 AEB(AEB Beta)
LDW/LDP/LDWPLane Departure Warning/Prevention/(合)车道偏离预警/纠偏/(合)
ELKEmergency Lane Keeping紧急车道保持
ALCAuto Lane Change拨杆变道辅助
BSD/LCABlind Spot Detection / Lane Changing Assist盲区监测/变道辅助(复用 LCA 信号)
RCTA/RCTB/RCTABRear Crossing Traffic Alert/Brake后向交通穿行预警/制动
RCWRear Collision Warning后向碰撞预警
DOWDoor Open Warning开门预警
MAIMis-Acceleration Inhibition误加速抑制(非手动接管)
TLATraffic Light Alert红绿灯提醒
XLA(语音控车)XLA 语音控车
ODDOperational Design Domain运行设计域(NOA 适用范围)
ISA/TSAIntelligent Speed Assistance / Traffic Speed Alert智能限速辅助(ECE 法规)

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

常见误解源码真相
ADAS 差异靠 sourceSet❌ dcddif/xcddif/global 三目录全空,靠三层控制(编译期 flavor + 运行期 isEce XML + 运行期 license)
用 hiddenFeatures/lemans_ece 隐藏不用(与 Light/Lock/Driving 不同!全靠 license + isEce 裁剪)
ECE 功能和国内差不多ECE 极简 65 行(UN-R152/R159/ISA 法规,仅 AEB/FCW + LDW + 超速告警 + 国家选择)
用一套 LicenseCN/Global 两套独立 license*_GLOBAL 系列)
ADS_MODE 是智驾模式✅ ACC/LCC/NOA 三档总闸(MiCarAutoPilotAdsModTabController 555 行最复杂,控 15+ 子项显隐)
APA/AVP/HPP 是一个功能三层:APA(现场)/AVP(代客远程)/HPP(记忆路线)
MAI 是手动接管误加速抑制(Mis-Acceleration Inhibition,防油门当刹车)
BSD 和 LCA 是两个信号复用同一信号 LCA
超速告警一个实现4 套平台分支(ECE TSA/海外 ISA/L2 ISA/普通)
AES = Automated-Valet-Parking❌ 源码注释笔误,实际 = Autonomous Emergency Steering(自动紧急转向)
RCTASwitch 读 RCW 信号❌ 注释错误,实际读 RCTAB 信号
Orin 只有一种✅ 单 84 TOPS / 双 508 TOPS(DRIVING_ASSIST_CTRL_TYPE_CONFIG
AEB 受 License 控制❌ AEB/FCW/LDW 由 ADD 高配配置字控(L2 强标车型例外)
NavOverSpeedMileage 是车控❌ NoaMileageProgress 是网络请求(10 分钟轮询,非 CarProperty)

三层控制机制(核心)

①编译期 App region flavor
   app/src/region/cn    → AutopilotSettingsFragment (国内/ECE)
   app/src/region/global → GlobalAutopilotSettingsFragment (海外)
        ↓
②运行期 MiCarSettings.isEce() 选 XML
   AutopilotSettingsFragment: isEce ? micar_autopilot_settings_fragment_ece.xml
                                    : micar_autopilot_settings_fragment.xml
   GlobalAutopilotSettingsFragment: 固定 micar_autopilot_settings_fragment_global.xml
        ↓
③运行期 license + 配置字裁剪 (getPreferenceKeyResIdsToRemove)
   MiCarLcsControlHelper.isLicenseFeatureVisible(id) + isCfgADDEnable() + isL2SupportedDevice()

文档导航

文档内容
01-代码结构与地区差异3 XML 对比、Fragment、60+ Controller 分类、三层控制、privacy 包
02-ADAS 功能全集NOA/泊车/AEB/车道/后向/限速/ADS/其他全功能详解
03-信号梳理AutoPilot 域、不可用原因、枚举值
04-地区法规与对抗验证三层控制、License 体系、ECE 法规、车型矩阵、对抗记录

关键文件索引

类型路径
入口 Fragment(国内/ECE)settingsAutoPilot/.../autopilot/AutopilotSettingsFragment.java
入口 Fragment(海外).../GlobalAutopilotSettingsFragment.java
3 XML.../res/xml/micar_autopilot_settings_fragment{,_global,_ece}.xml
国家选择.../CountrySelectDialogFragment.kt
Switch 基类.../BaseAutopilotSwitchController.kt
Tab 基类.../BaseAutoPilotTabControllerNew.kt
License 配置.../AutopilotLicenseConfig.kt
ADS 总闸(555 行).../MiCarAutoPilotAdsModTabController.kt
状态判断工具.../MiCarAutoPilotControlHelper.kt
privacy 包.../privacy/(GDPR 授权)
信号域base/settingsBaseLib/.../MiCarPropertyIds.java(AutoPilot 254 行起)