开启老旧安卓车机的 ABD 实现安装任意应用

前言

我的汽车是非常古老的“旧能源”汽车,虽然自带了一个安卓车机,但是系统封闭,什么权限都没开放,也不能安装第三方应用,只有一个“阉割”后的应用商店,里面只有几个非常老旧且缺乏维护的 APP 。

我很多年前也研究过怎么在这个车机上安装应用,那时还没有 AI ,只能纯人工检索,检索到了几种方法:

  • 输入法漏洞
  • 劫持 DNS

输入法漏洞即打开车机自带的百度输入法的隐私政策协议页面,这个页面是个 webview,其中还有外链,此时只要断开车机网络,点击这个外链,就会触发原生安卓的webview网络错误页面,在这个页面又存在跳转到原生安卓网络设置的链接,从这里跳出去就能直接进入到原生安卓界面,那么想干什么都可以了(例如开启 ADB)。但是由于我的车买来时就已经是新版系统了,新系统为了封堵这个漏洞,把所有原生页面全删除了。

劫持 DNS 就更极端了,上面说到,这个车机自带了一个“阉割”后的应用商店,于是就有人想到可以自建 DNS,然后在笔记本上开启热点,使用自建的 DNS,这个自建的 DNS 会劫持应用商店的域名,解析到自建的服务器上,这样就能实现安装任意应用了。但是这种方案只能去买其他人建好的服务,非常贵,自己建首先也得能抓到原始应用商店的接口才行,故我也放弃了。

直到最近有个叫 DiPlay 的项目挺火的,这个项目就是能够在不依赖任何外部硬件设备的情况下,直接在安卓车机上安装这个 APP,就可以连接 CarPlay。

看到这个项目我就想起来我的 “旧能源”汽车了,但是想安装这个,首先还是得解决车机安装应用的问题。

好在现在 AI 非常厉害了,我就想着看看 AI 有什么解决办法没,结果 AI 居然搜不出来解决方案,这是我万万没想到的。

虽然后面通过 AI 逆向车机固件找到了厂商预留的调试后门,但是网上似乎没有相关信息,所以决定还是写一篇文章记录一下吧,日后如果也有人有类似的需求,也能通过 AI 直接搜索到,就不用再像我一样,还得自己逆向固件。

最后,附上我的车机信息:

项目 确认结果
Android 版本 5.1,API 22
车机型号 R621
系统品牌 ECARX(亿咖通)
硬件平台 MT6735
CPU 架构 64 位 ARM,同时兼容 32 位 ARM 应用
固件版本 FE_7B_03_41_08_250901_R
软件版本 MPV1.1-20250901-060840
构建时间 2025 年 9 月 1 日 14:08:40,北京时间

我的车型号是 帝豪S 2021 1.4T CVT 尊贵版。

进入工程模式,开启 ADB,安装 APP

这次能够有所突破还是得益于这个车机在 2025 年爆发的一个莫名其妙致命 BUG,不知道是这个车机开发商写的什么服务的日期依赖有问题,导致到 2025 年后,所有车机的系统日期都发生了错乱,进而导致行车记录仪、GPS、网络、时间等基础服务全部无法使用了。

好在虽然车已停产,但是系统维护还是有的,有些 4S 店图方便,直接把固件包和升级方式发给车主,让车主自己升级,于是固件包就流到互联网上了,也被我下载下来了,从而得以有了逆向的入口。

好了,前面说了这么多有的没的,后面就按照步骤依次简略说应该怎么做了,不罗嗦了。

对了,以下操作都是基于我的车机软件提供商 德赛西威 的解决方案,这款车还有一个提供商 北斗星通 ,它可以直接按照我上面提到的输入法漏洞的方式安装第三方 APP,不用这么麻烦。

判断车机软件提供商的方法:

打开车机的 设置-车辆-系统-关于本机 查看 MCU 版本。

如果是数字 x.xx_ 开头的就是北斗星通。

如果是 0FE7B_ 开头的就是德赛西威。

进入工程模式

依次打开车机的 设置-车辆-系统-关于本机

在关于本机页面依次快速点击:

  • 硬件版本(一次)
  • 安卓版本(一次)
  • 系统版本(两次)

完成后即可进入工程模式。

开启 ADB

在工程模式页面中,进入 “版本信息”,在版本信息中:

快速连续点击 “Radio软件版本”8 次,每次间隔小于 1 秒。

第 8 次之后,在 1 秒内点击“4G 硬件版本信息”。

对应代码会请求开启 ADB,并显示 “adb打开”。

此时你就可以直接拿 USB 线连接车机下面的 USB 口使用 ADB 了。

(注意可能需要公对公 USB 线)

另外,ADB 会一直保持开启,即使断电或熄火也不会自动关闭,此时 USB 接口不能再用于充电,也不能识别到 U 盘。

关闭 ADB 可以通过在工程模式-版本信息 → 点击“屏幕TP版本信息” 此时会请求关闭,并提示 “adb关闭”。

安装 app

常规的 adb install xxx 方式会被系统拦截,但是可以通过流式安装的方式安装。

依次执行:

adb -d push "/你的APK绝对路径/xxx.apk" /data/local/tmp/temp.apk

adb -d shell pm install-create --user 0

第二条命令会返回一个 会话号, 记下返回的会话号。 假设是 [123],把下面的 123 换成实际号码,逐条执行:

adb -d shell pm install-write 123 base.apk /data/local/tmp/temp.apk

adb -d shell pm install-commit 123

返回 Success 即表示已经安装成功了。

总结

虽然开启了 ADB ,DiPlay 也安装上去了,但是捣鼓半天就是连接不上,很无语。

对了,正如刚才提到的,这个车机把原生安卓的所有页面都干掉了,甚至包括权限请求这些页面,所以在安装一些需要授权的 APP 时,可能无法弹出授权窗口,导致无法使用,此时就需要使用 adb 命令手动授权了,具体命令自行问 AI 吧,我这里就不写了。

最后修改于: 2026-10-19 10:52:34; 备注: 添加文章《开启老旧安卓车机的 ABD 实现安装任意应用》 (0b7eb13)