4、Android Automotive SDK安装:下载Android Studio与SDK、配置Android Automotive模拟器、创建第一个车机AVD、模拟器与真机差异

好,咱们正式开始动手了。

前面聊了那么多概念和架构,估计你早就想打开电脑干一场了。这一章,我就带你一步步把开发环境搭起来。别小看这一步,我见过太多人卡在环境配置上,一卡就是半天,心态直接崩了。

说白了,环境搭好了,后面的事就顺了。咱们开始吧。

4.1 下载Android Studio与SDK

Android Studio,咱们车机开发的“主战场”。你想想看,没有它,你连代码都写不了。

我个人习惯去官网下载最新稳定版。别追新,稳定版最靠谱。下载地址我就不贴了,你搜一下“Android Studio download”就能找到。

小提示: 下载时注意选对操作系统版本。Windows、macOS、Linux都有对应的包。我当年在Linux上踩过坑,下载了个Windows版,解压半天发现不对,气得我差点砸键盘。

安装过程很简单,一路下一步就行。但有几个点你得留心:

  • 安装路径不要有中文。这是老生常谈了,但总有人犯。我有个同事,名字里带个“明”字,结果路径里出现了中文,编译死活过不去,查了一下午才发现是路径问题。
  • SDK路径建议单独设置。默认在用户目录下,但如果你重装系统,SDK就没了。我习惯放在D盘或E盘,比如 D:\Android\Sdk
  • 勾选Android Virtual Device。安装时记得勾上,不然你后面还得手动装。

安装完成后,打开Android Studio,它会自动检测SDK。如果没有,你手动去 SDK Manager 里下载。

这里有个关键点:车机开发需要下载Android 12或更高版本的SDK。为什么?因为Android Automotive从12开始才真正成熟。我刚开始做车机时,用的还是Android 10,那叫一个痛苦,很多API都不支持,得自己写兼容层。

重点: 在SDK Manager中,除了下载对应版本的SDK Platform,还要勾选 Android SDK Build-ToolsAndroid SDK Platform-Tools。这两个是编译和调试的基础,缺一不可。

4.2 配置Android Automotive模拟器

模拟器,说白了就是一台虚拟的车机。你可以在电脑上跑,省得每次都要去真车上测试。

但配置模拟器不是点几下鼠标就完事的。我遇到过不少新手,模拟器启动后黑屏,或者卡得跟幻灯片一样。为什么会这样?

嗯,这里要注意几个配置:

  1. 开启硬件加速。在BIOS里打开Intel VT-x或AMD-V。如果你用的是Windows,还要在“Windows功能”里勾选“Hyper-V”和“Windows Hypervisor Platform”。这一步不做,模拟器慢得你想哭。
  2. 分配足够的内存和存储。我个人建议RAM给2GB以上,存储给8GB以上。车机应用比手机应用更吃资源,你想想看,它要跑导航、音乐、空调控制,一堆服务同时运行。
  3. 选择正确的系统镜像。在AVD Manager中,选择 Android Automotive 分类下的镜像。别选成手机版的,不然你看到的是一台手机,而不是车机。
警告: 模拟器不支持所有的车机硬件特性,比如GPS、蓝牙、CAN总线。这些功能在模拟器里是模拟不出来的。我曾经为了测试GPS定位,在模拟器里折腾了半天,最后发现它根本不支持,气得我直接去车上测了。

4.3 创建第一个车机AVD

好,现在咱们来创建第一个车机AVD(Android Virtual Device)。

打开Android Studio,找到 AVD Manager 图标,点进去。然后点击 Create Virtual Device

在设备列表里,你会看到很多选项。别选Phone,也别选Tablet。往下翻,找到 Automotive 分类。里面有几个预设的车机屏幕尺寸,比如:

设备名称 屏幕尺寸 分辨率 适用场景
Automotive Large 10.1 英寸 1920x1080 中控屏
Automotive Medium 8.0 英寸 1280x720 仪表盘或副屏
Automotive Small 7.0 英寸 1024x600 后座娱乐屏

我个人习惯选 Automotive Large,因为现在主流车机都是10寸以上的大屏。你选好设备后,点Next。

接下来选择系统镜像。记得选 Android Automotive 开头的,版本建议选最新的稳定版。比如 Android 12.0 (API 31)Android 13.0 (API 33)

然后配置AVD名称、内存、存储等。我一般这样设:

  • AVD名称: 比如 Car_AVD_12,方便识别
  • RAM: 2048 MB
  • VM heap: 512 MB
  • Internal Storage: 8192 MB
  • SD Card:Studio-managed,大小默认就行
小技巧: 如果你电脑配置不错,可以把RAM调到4096 MB,模拟器会更流畅。但别超过你物理内存的一半,不然电脑会卡死。

配置完成后,点Finish。然后你会看到新创建的AVD出现在列表里。点击右侧的绿色三角按钮,启动它。

第一次启动会比较慢,因为要创建系统镜像。耐心等个几分钟。启动后,你会看到一个车机界面,有导航、音乐、电话等图标。恭喜你,第一个车机AVD创建成功了!

4.4 模拟器与真机差异

模拟器跑起来了,但别高兴太早。它和真机差距不小。我刚开始做车机时,以为模拟器能搞定一切,结果到了真机上,各种问题冒出来。

这里我总结几个关键差异:

  • 性能差异。模拟器用的是你电脑的CPU和内存,而真车机用的是车载芯片(比如高通SA8155、瑞萨R-Car)。模拟器上跑得飞快的应用,到了真机上可能卡成PPT。所以,性能调优一定要在真机上做。
  • 硬件差异。模拟器不支持GPS、蓝牙、CAN总线、车载以太网等。这些硬件接口在模拟器里是模拟不出来的。你想想看,车机要跟车辆通信,读取车速、油耗、空调状态,这些在模拟器里根本做不到。
  • 屏幕差异。模拟器的屏幕是标准的矩形,而真车机的屏幕可能是异形的(比如带弧边、带物理按键)。还有分辨率、亮度、触控灵敏度,都不一样。
  • 系统差异。模拟器跑的是标准的Android Automotive系统,而真车机厂商会深度定制。比如大众的MIB系统、特斯拉的V11系统,界面和功能都大不相同。你在模拟器上开发的应用,到了真车上可能因为系统定制而出现兼容性问题。
避坑指南: 我曾经在模拟器上开发了一个导航应用,一切正常。结果到了真车上,导航界面死活不显示。查了半天,发现是车机厂商把导航的权限给禁了。所以,一定要尽早拿到真机,尽早测试。

那模拟器就没用了吗?当然不是。模拟器适合做 UI开发功能验证。比如你写了一个新的界面布局,可以在模拟器上快速看效果。或者你写了一个简单的逻辑,可以在模拟器上跑一遍,看看有没有崩溃。

但涉及到硬件交互、性能调优、系统兼容性,一定要上真机。我的建议是:模拟器占30%,真机占70%。别偷懒,真机测试是绕不过去的。

好,这一章就到这里。环境搭好了,下一章咱们就开始写第一个车机应用了。你准备好了吗?