认识车载神器-Android Auto

什么是Android Auto

首先,Android Auto 不是 OS。它是集成在 Android OS 里的 feature。当通过 USB、Wi-Fi 将 Android Phone 连接到支持 Android Auto 的车机上后,Android OS 将自动加载支持 Auto 模式下的 App 并将图像投屏到车机屏幕上。

跟苹果的 CarPlay、百度的 CarLife、小米的 CarWith 一样,其本质上是投屏。Phone 提供计算、渲染,车机只是 Display,Display 和按键回传 Input 的事件,Phone 处理好之后将新的帧数据回传进行 Display。

如何使用Android Auto

Google官网已经明确介绍了使用 Android Auto 的步骤

  1. 确保您的汽车或售后音响与 Android Auto 兼容;

  2. 手机上必须安装 Android Auto 应用,Android 10 以下的手机可以到 Google Play 下载安装,Android 10 及以上内置了 Android Auto;

  3. 使用 USB 数据线将手机连接到汽车,然后在汽车显示屏上查看 Android Auto;

虽然简单的三个步骤,但使用Android Auto有一个大前提:

  • 使用 Android Auto 的手机需要使用Google服务框架

因此需要通过GMS认证,国内汽车品牌基本不支持 Android Auto,一些沿用了国外车机系统的合资车型可能会支持 Android Auto。

关于 Android Auto 支持的汽车和音响品牌,可查阅官网资料,里面列举得很详细。

如何开发Android Auto支持的应用

Google Developer 官网已经将 Android for Cars 的开发流程和规范写得很详细了,这里就不再详细赘述了,把官方的内容简单归纳一下,并列出一些注意项:

  • 我们可以基于 Android Auto 开发媒体应用(音乐,视频)、即时通讯应用、地图导航应用、并且有相应的测试方案和分发方案;
  • Google针对 Android Auto 应用专门提供了SDK,即 Android for Cars App Library。为了兼容非 Car 的设备集成到了 AndroidX 中;
  • Android Auto 不支持自定义 UI,你的应用只负责与车载屏幕进行数据和事件交互,因此,所有的 Android Auto 应用都长得大同小异;
  • 开发的 Android Auto 应用必须经过 Google Play Store 分发,否则屏幕是不显示的,Google Play Store 有四个分发渠道:internal、closed testing、open testing、production,分别对应内部、内测、公测、产品,开发调试阶段用 internal 渠道即可;
  • 因为车载场景事关驾驶员生命安全,所以 Google 对 Android Auto 应用审核很严格。所有支持 Android Auto 的应用,必须满足质量规范才可能通过 Google Play Store 的审核;
  • 音乐app可参考官方开发的uamp,它是支持 Android Auto 的;
  • 国产手机基本都把 Android Auto 应用给删减掉了,所以都需要手动安装,但 Android Auto 启动时会安装谷歌服务框架,因此,第一次使用 Android Auto 需要科学上网。
  • 在使用国产手机调试 Android Auto 时,会出现车机屏幕黑屏的情况,原因可能是没有经过 Google Play Store 分发,也有可能是其他未知原因,因此,建议使用 pixel 手机进行开发调试;

Android Auto与Android Automotive的区别

  • Android Auto是 Android 的扩展功能,包含 Android Auto 应用、支持 Android Auto 的Apps,车机屏幕,缺一不可;

  • Android Automotive是基于 Android 定制的适用于车载的OS,简称 AAOS,归属于AOSP项目,编译的时候选择Automotive的target combo即可;

国内汽车厂商普遍使用的Android Automotive,主要原因有:

  • 可以不需要通过GMS认证;
  • 兼容 Android Phone 和 Android Auto 的应用;
  • 独立的系统,不需要手机投屏,开发App和扩展车载功能非常方便;

参考链接

Android for Cars 概览
Android Auto
androidx.​car.​app
Android 车机初体验:Auto,Automotive 傻傻分不清楚?
Android Auto 开发指北

相关推荐
HLC++13 小时前
Linux的进程间通信
android·linux·服务器
爱笑鱼16 小时前
Binder(二):AIDL 生成的 Proxy、Stub 和 Parcel 到底在做什么?
android
爱笑鱼17 小时前
Binder(一):一次方法调用,究竟怎样跨进程执行?
android
壮哥_icon18 小时前
【Android 系统开发】使用 BAT 脚本高效自动化管理 /system/priv-app/ 系统应用(安装与卸载)
android·运维·自动化
ZZH_AI项目交付18 小时前
同一套前摄心率算法,为什么 iPhone 16 Pro 稳,iPhone XR 会失准?
ios·app·ai编程
用户693717500138419 小时前
Claude Code终端日志Token占用实测:一个过滤器砍掉60%-90%
android·前端·后端
蝉蜕日记19 小时前
AccumuPDF高级版 v2.57 | 视图文转换PDF,合并分割压缩
android·智能手机·pdf·生活·软件需求
吐了啊取名字太难19 小时前
美颜系统AI修图本地跑并支持Mac、win、安卓、iOS不卡顿
android·人工智能·windows·数码相机·mac·ai编程
阿pin21 小时前
Android随笔-Retrofit
android·retrofit
想取一个与众不同的名字好难21 小时前
安卓自定义颜色选择器
android