andreknieriem/headunit-revived
摘要
Headunit Revived 是一款安卓应用,可将平板电脑或手机转变为 Android Auto 接收器,支持有线和无线连接。
查看缓存全文
缓存时间: 2026/06/24 13:45
andreknieriem/headunit-revived 来源: https://github.com/andreknieriem/headunit-revived
Headunit Revived
Headunit Revived 是一款 Android 应用,能将你的 Android 平板或手机变成 Android Auto 接收器。本项目是对 Michael Reid 原始 headunit 项目的复兴版。原始项目可在此处找到:https://github.com/mikereidis/headunit
截图
使用方法
查看 Wiki (https://github.com/andreknieriem/headunit-revived/wiki) 获取详细文档、设置指南和故障排查!
有线 USB 连接
- 通过 USB 线将你的 Android 设备(手机)连接到运行 Headunit Revived 的平板。
- 确保手机上已安装 Android Auto。
- 如有必要,将手机设置为主机模式,并选择 Android Auto。
- 在 Headunit Revived 中点击 USB 按钮,找到你的手机并点击右侧按钮允许连接。
- 在列表中点击你的手机,等待 Android Auto 启动。
无线助手(推荐)
这是最可靠的无线连接方式。它通过手机上的配套应用触发连接。
- 下载: Google Play 商店中的 Wireless Helper (https://play.google.com/store/apps/details?id=com.andrerinas.wirelesshelper)
- 功能: 配置最少,支持 NSD、Wi-Fi Direct 自动连接和蓝牙自动启动。
设置:
- 在 Headunit Revived 设置中,将 无线模式 设置为 助手模式。
- 确保两台设备处于同一网络(热点或 WiFi)。
- 在手机上打开 Wireless Helper 应用并启动服务。
- 助手会自动找到你的 headunit 并启动连接。
旧版无线选项
- 无线启动器(Wireless Launcher): 你仍可使用 Emil Borconi 的原始 Wireless Launcher (https://play.google.com/store/apps/details?id=com.borconi.emil.wifilauncherforhur)。
- 手动 / 原生: 使用 Android Auto 开发者设置中内置的 “Headunit Server”(可能在 10.x.x.x 网络中失败)。
通过 Intent 无线连接(高级用户)
你可以使用 Android Intent 触发无线连接尝试。这对于 Tasker、MacroDroid 等自动化工具或通过 ADB 非常有用。
URI 方案: headunit://connect?ip=
ADB 命令示例:
adb shell am start -a android.intent.action.VIEW -d "headunit://connect?ip=192.168.1.25"
已知问题
- 竖屏模式下的 Google Maps: 在某些设备上使用竖屏模式时,谷歌地图内的触摸交互(搜索、滚动)可能无法正常工作。 修复: 尝试在应用设置中将 像素密度 (DPI) 值降低至 200 以下(例如 190)。这通常能恢复全部功能。
- 无线连接频繁断开: 如果连接频繁断开,请关闭手机 WiFi 设置中的 “WiFi Assistant” 或 “在网络间切换”,以防止手机因“无网络“而终止连接。同时检查电池优化设置。
- Android 10 (Q) 及以下版本的自助模式: 在 Android Auto 16.4 及以上版本中,谷歌已禁用了 Android 10 及以下版本的自动无线投影启动。虽然自助模式在较新 Android 版本上仍然有效,但在 Android 10 及以下设备上,通常无法通过最新的 Google 应用更新直接触发投影。 解决方法: 你仍可通过启动内置的 Android Auto Headunit Server 并通过 Wi-Fi 模式(环回)在设备上使用自助模式。请参阅故障排查指南 (https://github.com/andreknieriem/headunit-revived/wiki/Troubleshooting#self-mode-on-android-10-q-and-below) 获取分步说明。
计划
- 添加 libusb 作为原生 USB 栈的替代方案,以提高与某些设备的兼容性
- 为 UI 和应用本身提供更多自定义选项
更新日志
v.3.0.1
- 修复:断开连接后应用退出
- 增强:USB 工作流程。这有望消除一些随机的 USB 断开问题
- 修复:Android < 6 设备上的键盘输入
- 增强:WiFi Direct 模式
- 增强:某些设备的文件选择器
- 修复:Play Console 中显示的一些致命错误
v.3.0.0
- 新增:自定义加载屏幕(图片/GIF/视频),感谢 @andrecuellar
- 新增:设置重置按钮,如果你在设置中搞砸了,现在可以重置为默认值
- 移除:旧的已弃用的用 C 代码编写的 SSL 库,以便于维护、提高稳定性和减小文件大小
- 新增:直接记录日志到文件而不依赖 logcat,感谢 @Anton111111
- 尝试修复运营商丢失时连接丢失的问题
- 保持 USB 断开连接持续 8 秒,以便可能重启 USB 加密狗
- 实现汽车大灯信号模式 (ILL+),用于夜间主题管理,感谢 @minhtuanact
- 新增设置导出和导入功能,带有备份选项,感谢 @JanRi3D
- 为 USB 连接添加白名单,以避免与 iPhone 和其他 USB 设备冲突
- 新增二维码,用于无线助手的便捷连接
- 修复:蓝牙自动连接在 USB 会话期间将手机拖入无线流程,感谢 @andrecuellar
- 同步持久化自动优化向导设置,感谢 @andrecuellar
- 新增从右侧用两根手指滑动切换全屏模式和正常(所有栏)模式的功能,感谢 @Anton111111
- 改进:USB 按钮自动连接,感谢 @bezprobeloff
- 捕获 Play Console 中列出的一个致命错误
- 修复:自 2.1.1 版本以来,某些设备上的音频卡顿问题
- 修复:USB 设备列表重复以及 Android 10+ 上的 Android Auto 投影启动,感谢 @jeancarloscc
- 增强:Google Nearby。之前视频只有 2 FPS,存在 Bug
- 修复:导航按钮映射现在正常工作
v.2.3.1
- 修复了例如在边界处连接丢失的问题
- 如果可用,将套接字绑定到 WiFi 网络,以防止运营商丢失时连接断开
- 新增静态音频焦点开关,以防止某些设备上音频焦点丢失
- 修复 Samsung 例程和模式
- 修复如果手机握持方向错误导致启动时方向错误的问题。现在使用设置中的方向
- 尝试修复 AAWireless 加密狗的 USB 错误
- 新增音频混合器,用于混合不同的音频轨道,感谢 @jeffdapaz 的想法
- 新增多个设备的蓝牙自动启动
- 修复麦克风输入源映射错误
- 新增越南语翻译 🇻🇳,感谢 @minhtuanact
- 合并拉取请求 #549 - 实现返回键路由并为返回键添加按键映射,感谢 @JanRi3D
v.2.3.0
- 为按键映射新增一些新按钮
- 修复 3 个致命错误
- 修复全志设备上的视频解码器设置
- 新增导航意图
- 包含拉取请求 #456
- 新增 “连接 WiFi 时自动启动” 设置 #324
- 修复原生 AA 上的空 BSSID。现在应该能在更多设备上使用
- 修复媒体会话相关的新致命错误
- 重新添加全屏覆盖系统图标 #351
- 将回车键 (66) 重新映射为 DPad 中心键 (23),用于旋转编码器 #459
- 如果在 100 毫秒内按键事件相同,则去抖多个按键事件 #465
- 将麦克风设置移动到单独的片段,并为 2.2.2 版本的新麦克风增强功能添加 3 个新选项,默认关闭以提高兼容性
- 合并拉取请求 #481 - 应用联发科 60fps 和音频优化,感谢 @mrkontrast-coder
- 重写 AudioTrackWrapper 的部分代码,以增强稳定性并减少卡顿
- 合并拉取请求 #490 - 添加 UI 缩放设置,感谢 @Anton11111
- 合并拉取请求 #502 - 导航广播更新。感谢 @Bastel2020
v.2.2.2
- 修复:断开连接时退出现在也会停止车载模式
- 修复:退出意图未关闭应用
- 修复:如果启用了 “自动或传感器”,应用切换时方向无法正常工作
- 再次:方向盘和按键映射进行了一些更改,也许这能在更多设备上使用
- 扩展麦克风调试,添加噪声抑制器、自动增益控制和声学回声消除器以提高语音质量
- 修复了 Android USB 系统提示无法为手机显示的问题。现在默认启用提示,并且可以单独为 USB 拇指驱动器禁用。它称为 “监听 USB 设备” 设置,并将系统 USB 提示与自动启动行为解耦。这为所有用户恢复了旧功能,并且可以为那些讨厌非 Android Auto 设备弹出窗口的用户禁用
- 修复:如果可用区域与协商的区域不同,则重新缩放并更新 UI。这发生在设备关于导航栏撒谎的情况下
- 修复:低于 Lollipop 的设备断开连接时的致命崩溃
- 修复:在英国和其他国家/地区超过 3 小时的自动夜间模式,感谢 @BinarySimple17
- 添加单独的音频流设置并更新相关功能,感谢 @Anton111111
- 增强:当音频接收器关闭时,应用不再尝试获取媒体焦点
v.2.2.1
- 修复了自 2.2.0 以来 USB 连接中的一个致命错误。这很重要,因此在未修复所有计划问题的情况下发布此版本
- Google Nearby Connection 现在在启用自动连接时自动连接
- UI:为 Android 10 及以下版本的自助模式添加错误消息
- 缩放和触摸的新方法,以防止偏移
- 修复应用在应用抽屉中出现多次的问题
- 修复例程和意图无法正常工作的问题
v.2.2.0
- 新增:原生 AA。🎉 警告!这仅在有限数量的 headunit 上有效!大多数 Android 设备不支持通过蓝牙连接两个 Android 设备,而这是此功能正常工作的关键。
- 新增:Google Nearby 支持作为连接方式。需要 Wireless Helper 1.6.0 或更高版本
- 新增:画中画支持
- 新增:4K 选择
- 尝试修复 WiFi 连接问题
- 新增:直接进入自助模式启动应用的意图和例程
- 新增:旧设备在 SurfaceView 上的强制缩放选项
- 新增:新的沉浸式全屏模式,避开刘海区域。这应能修复例如 Pixel 手机的问题
- 增强:视频解码器错误处理
- 新增:用于 Wi-Fi Direct 的 2 个新 WiFi 选项。感谢 @andrecuellar
- 新增日语语言 🇯🇵,感谢 @mattyann87
- 增强:媒体会话通知。感谢 @irwanrhmn
- 新应用图标(无文字),提高可见性
- 修复:非 Android Auto 设备出现的 USB 模态框,感谢 @andrecuellar
- 新增:在设置中创建可配置的音频队列和音频缓冲区,感谢 @irwanrhmn
v.2.1.1
- 修复:Android 4.2 上的布局崩溃
- 新增:启用热点选项。注意:并非在所有设备上都有效。尤其是在 Android 13 之后!
- 新增:用于离线模式下新版 Android Auto 的假 VPN 处理程序。不再可能将网络发送到 AA,因此如果设备离线,我们需要这个 hack
- 增强:音频焦点现在更加激进,希望能修复音频不从平板/headunit 发出的错误
- 新增:自动启动功能。感谢 @andrecuellar
- 注意:需要拆分 Github 和 Play Store 版本。Google 不允许在离线自助模式下使用假 VPN。因此 Play Store 版本中不包含此功能!
v.2.1.0
- 修复:退出意图无效。感谢 benyjr
- 新增:旋钮支持
- 修复:Android < 5 中的崩溃
- 修复:双重按钮触发以及回车/旋钮点击映射为 DPad 中心
- 增强:自助模式下的 Android Auto 启动现在始终尝试所有方法并捕获错误
- 修复:自动启动、连接丢失叠加层、toast 和 API17 蓝牙崩溃。感谢 @andrecuellar
- 新增:断开连接时退出应用的功能/设置,感谢 @Tilak-03 和 @andrecuellar
- 增强:Wi-Fi 设置重定向已移除。现在仅显示 toast 消息
- 修复:样式错误
v.2.0.2
- 修复:60FPS 从未应用
- 修复:SSL 握手修复截断消息
- 新增:应用本身的暗模式和极暗模式设置,感谢 @andrecuellar!
- 移除:应用 category=“maps”,以便导航按钮再次识别应用
- 修复:多个按钮事件和双击/三击跳过
- 修复:USB 权限请求,感谢 @Bastel2020
- 新增:禁用拉伸以适配的设置。这将修复某些设备的错误渲染,感谢 tsabaia
- 修复:旧设备在非全屏模式下的触摸屏准确性
- 修复:当 dpi 较小且屏幕较宽时,主屏幕上出现的巨大图标按钮
v.2.0.1
- 修复:现代设备上出现的多个音量滑块(Pixel 9 修复)
- 新增:媒体按钮模拟支持(SWC 改进,适用于 MacroDroid 等)
- 新增:应用快捷方式和深度链接用于完全退出应用 (headunit://exit)
- 新增:改进的 Wi-Fi Direct 可靠性,通过递归发现和 ping 交接实现
- 新增:罗马尼亚语翻译 🇷🇴,感谢 @LeeWiu
- 合并拉取请求 #189:添加导航消息处理,感谢 @Bastel2020
- 合并拉取请求 #215:修复 USB 重新连接竞争条件和 AA 退出后的陈旧加密狗数据,感谢 @andrecuellar
- 合并拉取请求 #205:修复网络变化时的无线加密狗断开,感谢 @andrecuellar
- 合并拉取请求 #216:添加蓝牙 SCO 麦克风支持,感谢 tgigli
v.2.0.0
- 新增 Wi-Fi Direct (P2P):支持。将手机连接到 headunit,无需共享网络或热点。headunit 现在自动成为 P2P 对等体。
- 重构连接核心:使用新的 CommManager 完全重写了内部连接处理。提高了稳定性、更快的握手和更好的协程集成。
- 增强全屏逻辑:可选择 “沉浸式”(隐藏所有)、“仅状态栏”(保留导航栏)或 “无”。改善了之前按钮被遮挡设备的兼容性。
- 新增自动优化向导:自动为你的特定硬件推荐最佳分辨率、DPI 和编解码器。
- 新增早期 MediaSession 初始化:修复了音频路由问题,即手机有时会通过自己的扬声器而不是 headunit 播放声音。
- 新增新的日志系统:集成了日志级别控制和文件捕获,便于调试。
- 重要:修复自助模式中 Android Auto 16.4 的意图问题。在 Wireless Helper 中也需要更新至 1.2.0
v.1.15.1
- 新功能:新增自动优化向导,自动为你的硬件找到最佳分辨率、DPI 和编解码器设置。
- Bug 修复:修复了自助模式在离线/热点场景下启动失败的问题(网络 ID 0 修复)。
- Bug 修复:改进了音频路由。手机现在更有可能在连接时立即将音频路由到 headunit,通过使用早期初始化的 MediaSession 和远程播放元数据。
- Bug 修复:修复了 GPS 速度计算。之前由于错误的单位转换(使用了节而不是 mm/s),速度被加倍。
- UI:改进了小屏幕上的设置可读性,允许多行描述。
v.1.15.0
- 新增阿拉伯语翻译,感谢 A5H0
- 新增用于设置地图日/夜模式的意图
- 为旧设备添加新的窗口标志,最终解决了全屏问题
- 新增意图使 headunit 将应用识别为导航应用
- 新增 LegacyOptimizer,它将更直接快速地处理单核 CPU 的任务。应能提升 Android 4.1 - 4.4 设备的性能
- 修复了 BT 权限 Bug
- 更改了暮光计算器,以便在自动模式下更好地切换日/夜,防止屏幕过亮
- 添加更多媒体会话逻辑,以获取音频焦点和音频路由
- 合并连接屏幕上的重试按钮,感谢 @andrecuellar
- 合并 USB 自动连接功能,感谢 @andrecuellar
v.1.14.3
- 自动化: 为 Samsung Modes & Routines 支持添加应用快捷方式。
- 导航: 正式注册为导航提供程序(兼容 NAV 按钮)。
- 稳定性: 通过改进内部数据处理和内存管理,修复了罕见的应用冻结问题。
- 兼容性: 改善了对 Amazon Fire 平板和没有 GPS 设备的硬件支持。
v.1.14.2
- Bug 修复:通知和退出按钮无法关闭应用
- 改进:移除旧的遗留不可见蓝牙设置,防止蓝牙始终启动
v.1.14.1
- 改进:将 USB 自动连接集成到 “自动连接上次会话”。应用现在表现得像原生的 headunit,在启动或插入 USB 时自动连接。
- 新功能:新增 USB 软重置
相似文章
将你的安卓手机变成业余无线电收发器
kv4p HT 是一个开源硬件和软件项目,可将安卓手机变成具有 APRS 功能的 1 瓦特 VHF/UHF 业余无线电收发器。
通过USB/IP将浏览器内Linux虚拟机与WebUSB桥接,复活旧扫描仪
介绍yes-we-scan.app,一款使用浏览器内Linux虚拟机(v86)和WebUSB的网络应用,通过浏览器中运行SANE,让用户无需原生驱动即可复活旧USB扫描仪。
本田思域与邪恶泊车员
一位安全研究人员揭示了本田思域车载信息娱乐系统(headunit)会接受使用公开已知的AOSP测试密钥进行的未签名更新,从而使得通过物理USB访问可以实现“邪恶泊车员”(evil valet)攻击。还发布了如ota-builder和apk-rebuilder等工具,以方便进一步的逆向工程。
Rivian 软件主管称 Apple CarPlay 和 Android Auto 在 AI 时代将变得多余
Rivian 首席软件官 Wassym Bensaid 认为,由 AI 驱动的语音助手将提供无需应用镜像的无缝集成体验,从而使 Apple CarPlay 和 Android Auto 变得多余。
我把一台80美元的RK3562安卓平板变成了Debian Linux工作站
一个构建系统和预发布的Debian 12映像,适用于Doogee U10安卓平板(Rockchip RK3562),无需解锁引导加载程序即可实现完整的Linux功能,从零开始逆向工程。