本文档整理了用 adb 诊断无线 Android Auto 在行驶途中反复"断开又重新开启"这一症状的流程,以及原因候选、处置候选。大多数情况下并非应用崩溃,而是 Wi-Fi 链路掉线,而表面上看都一样是"AA 死了又复活"。本文对实际的三星 Galaxy(Android 16 / One UI 8.5)+ Audi(基于 Android Automotive 的 MMI)组合案例进行了归纳。
本文档的所有命令都是只读(查询)。不会更改设备。
settings put、forget-network、pm clear等更改命令在"处置"章节中单独讲解,由用户自行判断执行。
无线 AA 用户感觉"手机异常关闭后又重启"的现象,大多是三者之一。必须先分清是哪一种,才不会挖错方向。
| 体感症状 | 实际真相 | 确认方法 |
|---|---|---|
| AA 画面熄灭后又重新出现 | Wi-Fi 链路掉线 → AA 会话重启(最常见) | Wi-Fi 连接事件激增 |
| 只有 AA 应用闪退 | 应用崩溃(reason=4)或 ANR(reason=6) | exit-info 中有 crash 记录 |
| 整部手机重启 | 内核 panic / 看门狗 | uptime、bootreason |
先确认手机是否真的重启过。
adb shell uptime
adb shell getprop ro.boot.bootreason
如果 uptime 维持在数天级别,且 bootreason 为 shutdown,userrequested(正常关机),那么手机从未重启过。 这样就能把问题缩小到应用级或链路级。
exit-infoAndroid 11+ 的 ApplicationExitInfo 会记录进程死亡的原因。AA 包名是 com.google.android.projection.gearhead。
adb shell dumpsys activity exit-info com.google.android.projection.gearhead
查看每条记录的 reason。
| reason | 含义 | 解读 |
|---|---|---|
4 (APP CRASH) |
因 Java 异常而崩溃 | 真正的应用 bug。 获取堆栈跟踪 |
6 (ANR) |
无响应 | 应用卡死 |
3 (LOW_MEMORY) |
内存回收 | 不是崩溃。清理缓存 |
5 (NATIVE CRASH) |
原生崩溃 | 确认 tombstone |
在实际案例中,AA 的终止记录全部是
reason=3 (LOW_MEMORY),而且死亡时进程全部处于缓存/服务状态(importance 300~400)。也就是说,并不是在活动 AA 会话中死掉的,而是会话结束后降为缓存的进程被回收了。 这种情况下原因不在 AA 应用。
也要一并查看 importance 值。如果在 100(FOREGROUND)/125(FOREGROUND_SERVICE)时死亡,那是活动会话死亡;但如果是 300(SERVICE)/400(CACHED),则是已经降到后台之后被清理掉的。
如果不是崩溃,就看 Wi-Fi 链路。无线 AA 的结构是手机连上车辆开启的 5GHz 热点来收发数据,因此这条链路一断,AA 会话也随之断开。
# 与车载 AP 的连接事件历史(含成功/失败、失败原因)
adb shell dumpsys wifi | grep -i "<车载AP_SSID>"
# supplicant 状态转换时间线(确认 associating↔disconnected 反复)
adb shell dumpsys batterystats --history | grep -iE "wifi_suppl|<车载AP_SSID>"
正常情况下应该是每次行驶连接一次。如果一次行驶中连接事件出现了数十次,且 supplicant 以秒为单位反复 associating ↔ disconnected,那就是陷入了重连循环。
dumpsys wifi 的连接失败事件中,失败发生的位置是关键线索。
AUTHENTICATION_FAILURE_EVENT reason=3:ERROR_AUTH_FAILURE_WRONG_PSWD
supplicantStateChangeEvents: { ASSOCIATING }
ASSOCIATION_REJECTION_EVENT status=1:UNSPECIFIED_FAILURE
这个组合指向的是密码正确但认证失败的特殊情况。判别要点:
WRONG_PSWD,但平时能正常连上同一个网络 → 密码正常,"wrong password"是误报。ASSOCIATING(association 完成之前)。若是 WPA2,密码是在 association 之后的 4-way handshake 中验证的,因此这一阶段不可能报"密码错误"。而 WPA3(SAE) 在 association 之前的 Authentication 帧中就会用到密码 → 这个失败位置与 SAE 协商失败正好吻合。确认已保存的网络配置文件是否被当作 WPA3:
adb shell dumpsys wifi | grep -iE "SAE|IsAddedByAutoUpgrade|RequirePmf"
如果看到 KeyMgmt: SAE + IsAddedByAutoUpgrade: true,说明 Android 把原本是 WPA2 的配置文件自动升级成了 WPA3。怀疑正是这个自动升级在与某些主机(head unit)进行 SAE 协商时被破坏。
在车辆附近执行 1 次。这一行就能确定/否定 SAE 假设。
adb shell cmd wifi list-scan-results | grep -i "<车载AP_SSID>"
[SAE] / [RSN-SAE] / [MFPR] → 广播 WPA3。SAE 假设确定。[WPA2-PSK-CCMP-128][RSN-PSK-CCMP-128][ESS] → 仅 WPA2。SAE 假设否定,转向其他候选。2026-06-08 的 Google Play Services 26.22 加入了"Device Connection 相关 bug 修复",被广泛报道为无线 AA 断连的解决方案。首先确认这部手机是否已经用上了它。
adb shell dumpsys package com.google.android.gms | grep versionName
如果版本已在 26.22 以上却仍持续出现症状,那么那个著名的 bug 并非原因。(实际案例:已在 26.24 以上却仍复发 → 排除)
按证据强度顺序列出候选。不要断定为单一原因,请用上述诊断加以缩小。
① Android 16 WPA3/SAE 认证回归(最有可能)
失败在ASSOCIATING阶段 +status=1。平时能连上同一个 AP。已保存的配置文件被 SAE 自动升级。→ 与在 Pixel/Galaxy 的 Android 16 + WPA3-SAE AP 组合下报告的"密码正确却认证失败"回归特征一致。
② 主机(AP)端会话/固件问题
status=1:UNSPECIFIED_FAILURE是 AP 发出的拒绝码。可能是主机没有清理掉上一个会话的 association,或者固件太旧。也有过车辆信息娱乐软件升级后出现断连的先例。
③ 蓝牙先断 → Wi-Fi 断开
无线 AA 是 BT(配对·音频)+ Wi-Fi(数据)的组合。如果信号很好(-30~-40dBm)却断连,那可能不是 RF 距离问题,而是 BT 栈问题。有大量与最新 BT 5.4 / LE Audio 相关的报告。
④ 已保存网络的竞争 / "避开不良 Wi-Fi"
如果车载 AP 也被登记为普通的已保存网络,系统的自动连接与 AA 专用连接就会争夺同一个 AP。若network_avoid_bad_wifi=1,系统会试图避开没有互联网的车载 AP。
⑤ 内存压力(放大因素,并非原因)
如果用 RAM Plus(虚拟内存)把应用压入 zram 而不是直接杀掉,那么链路恢复时 AA 进程的冷启动/换入(swap-in)会变慢。它本身不会造成断连,但会让重启变慢。
按非破坏性·可逆·低成本顺序。 由于是个人设备,删除/更改设置请自行判断执行。建议一次只改一项,行驶几天观察是否复发,逐项验证。
设置 → 连接 → Wi-Fi → ⋮ → 已保存的网络 → <车载AP> → 删除
WifiNetworkSpecifier)直接连接,因此无线 AA 仍会正常工作。 要恢复的话,重新连接并输入密码即可。如果原因 ① 得到确定,已知的确定性变通方法是把 AP 降为仅 WPA2。请通过手册/经销商确认车辆 MMI 是否暴露了 Wi-Fi 安全性设置。
如果车辆信息娱乐系统的构建太旧(通过安全补丁日期确认),就进行更新。通过厂商更新门户或经销商。
开发者选项 → Bluetooth LE Audio Mode → Disable 后重启。(附带地,也有关闭 A2DP 硬件卸载(offload)的案例)
要连断连瞬间的 deauth 原因码都抓到,由于 main logcat 缓冲区较小(默认数 MiB,只够十几分钟),很快就会被覆盖。请在下次行驶前把它调大。
adb logcat -b main -G 16M # 扩大缓冲区
# ... 行驶并复现症状 ...
adb logcat -b main -d > drive.log # 行驶后立即转储(非流式)
从设备提取的日志·截图中含有 SSID/BSSID/BT 地址/账户等个人·设备识别信息。共享·发布前请打码。
| 项目 | 判定方法 | 本案例结果 |
|---|---|---|
| AA 应用崩溃 | exit-info reason=4/6 |
无(全部为 LOW_MEMORY) |
| 手机重启 | uptime / bootreason |
无 |
| Wi-Fi 重连循环 | dumpsys wifi 连接事件激增 |
已确认 |
| WPA3/SAE 认证失败 | 失败位置 ASSOCIATING + status=1 |
有可能 |
| GMS bug | versionName ≥ 26.22 |
排除(已是最新) |
| 内存压力 | zram/loadavg | 放大因素 |