认识车载神器-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 开发指北

相关推荐
Lei活在当下4 小时前
【项目踩坑实录】并发环境下,Glide缓存引起的图片加载异常
android·debug·glide
my_power5206 小时前
检出git项目到android studio该如何配置
android·git·android studio
三少爷的鞋9 小时前
Repository 方法设计:suspend 与 Flow 的决选择指南(以朋友圈为例)
android
阿里云云原生9 小时前
Android App 崩溃排查指南:阿里云 RUM 如何让你快速从告警到定位根因?
android·java
FinClip10 小时前
当券商成立互联网分公司,面向长尾客户的“智能化总攻”开始了
app
FinClip10 小时前
流量都去哪儿了?拯救APP月活,用FinClip轻松引入第三方生态
app
FinClip11 小时前
调用多个Agent,Chatkit让APP从“单打独斗”到“团队协作”
app
cmdch201711 小时前
手持机安卓新增推送按钮功能
android
攻城狮201512 小时前
【rk3528/rk3518 android14 kernel-6.10 emcp sdk】
android
何妨呀~12 小时前
mysql 8服务器实验
android·mysql·adb