开发环境搭建:Android Studio配置、Xcode环境准备、模拟器与真机调试设置

说实话,做车载开发这么多年,我见过太多人卡在环境搭建这一步。明明代码逻辑没问题,结果因为环境没配好,一调试就崩。今天咱们就把这事彻底捋清楚。

核心要点:Android Auto和CarPlay的开发环境,说白了就是两套工具链——Google的Android Studio和Apple的Xcode。你不需要两台电脑,但需要两个IDE。

2.1 Android Studio配置

我个人习惯用最新稳定版的Android Studio。别追新,稳定最重要。我记得有一次手贱装了beta版,结果Gradle插件不兼容,折腾了一下午。

2.1.1 安装与SDK配置

下载地址就不贴了,直接去developer.android.com。安装时注意几点:

  • SDK版本选API 30以上(Android 11),因为Android Auto最低支持就是这个版本
  • 一定要勾选「Android Auto API」和「Android Automotive OS」组件
  • 模拟器建议选x86_64镜像,跑起来快

我的小技巧:SDK Manager里把「Show Package Details」打开,你会看到更多可选组件。比如「Android Auto Desktop Head Unit」这个模拟器,很多人不知道要单独装。

2.1.2 Gradle配置要点

项目级的build.gradle里,要加这么一段:

android {
    compileSdk 34
    defaultConfig {
        minSdk 30
        targetSdk 34
    }
}

dependencies {
    implementation 'androidx.car.app:app:1.4.0'
    implementation 'androidx.car.app:app-projected:1.4.0'
}

嗯,这里要注意。版本号别乱写,去Google Maven仓库查最新的。我曾经因为用了过时的版本,导致API不兼容,编译过了但运行时闪退。

2.1.3 模拟器调试

Android Auto的模拟器调试,和普通App不太一样。你需要:

  1. 创建AVD时选「Automotive」类别下的设备
  2. 启动模拟器后,点击桌面上的「Android Auto」图标
  3. 在模拟器里授权你的App

避坑指南:我曾经遇到过模拟器里Android Auto一直显示「正在加载」。后来发现是模拟器没开GPU加速。记得在AVD设置里把「Emulated Performance」选为「Hardware - GLES 2.0」。

2.2 Xcode环境准备

做CarPlay开发,Xcode是绕不开的。说实话,Apple的生态比Android封闭得多,但工具链也更统一。

2.2.1 安装与证书配置

Xcode直接从Mac App Store下载就行。但CarPlay开发需要额外的步骤:

  • 必须加入Apple Developer Program(年费99美元)
  • 在开发者中心申请CarPlay entitlement
  • 配置Provisioning Profile时勾选「CarPlay」服务

重要提醒:CarPlay的entitlement不是自动有的。你得在开发者中心提交申请,Apple审核通过后才能用。我当年等了两周才批下来。

2.2.2 Info.plist配置

在Xcode项目里,Info.plist要加这么几项:

<key>UIApplicationSupportsMultipleScenes</key>
<false/>
<key>UISupportedExternalAccessoryProtocols</key>
<array>
    <string>com.apple.carplay</string>
</array>

你想想看,如果不加这个protocol声明,CarPlay根本认不出你的App。

2.2.3 模拟器调试

Xcode自带的模拟器支持CarPlay。启动方法:

  1. Xcode菜单选「Xcode → Open Developer Tool → Simulator」
  2. 模拟器里选「I/O → External Displays → CarPlay」
  3. 你的App会自动出现在CarPlay界面里

我的经验:模拟器里的CarPlay界面是固定的,不能像真车机那样触摸。但用来调试UI布局和基本逻辑足够了。真机调试时再测触摸交互。

2.3 真机调试设置

模拟器跑得再好,不上真机都是白搭。真机调试才是检验真理的唯一标准。

2.3.1 Android真机调试

Android Auto的真机调试,需要一台支持Android Auto的车机或第三方车机盒子。步骤:

  • 手机开启开发者模式,打开USB调试
  • 用USB线连接手机和车机
  • 在Android Studio里选择「Run → Run 'app'」
  • 车机上会弹出授权提示,确认即可

避坑指南:我曾经用了一根劣质USB线,结果数据传不过去。换根原装线就好了。另外,有些车机需要先进入「开发者模式」才能识别调试App。

2.3.2 iOS真机调试

CarPlay的真机调试更麻烦一些。你需要:

  1. 一台iPhone(iOS 14以上)
  2. 一辆支持CarPlay的车,或者一个CarPlay车机盒子
  3. 用Lightning线连接iPhone和车机
  4. 在Xcode里选择你的iPhone作为目标设备
  5. 点击Run,App会自动安装并启动

核心区别:Android Auto的调试App会直接显示在车机屏幕上。而CarPlay的调试App,需要先在手机上启动,然后车机才会显示。这个坑我踩过,当时以为App没装上去。

2.4 知识体系总览

下面这张图,把整个环境搭建的脉络理清楚了。你照着这个流程走,基本不会出大问题。

开发环境搭建知识体系 Android Studio 配置 Xcode 环境准备 SDK配置(API 30+) Gradle依赖配置 模拟器调试(Automotive AVD) 真机调试(USB连接+授权) 开发者证书与entitlement Info.plist配置 模拟器调试(External Displays) 真机调试(Lightning连接) 模拟器验证逻辑 → 真机验证交互

2.5 常见问题与解决方案

问题 原因 解决方案
Android Auto模拟器一直转圈 GPU加速未开启 AVD设置中开启硬件加速
CarPlay模拟器不显示App Info.plist未配置protocol 添加com.apple.carplay声明
真机调试时App闪退 SDK版本不匹配 检查compileSdk和targetSdk
Xcode无法安装到真机 证书或entitlement未配置 重新生成Provisioning Profile

最后说一句:环境搭建这事,急不来。我当年第一次配CarPlay环境,折腾了整整两天。但配好之后,后面就顺了。你按这个流程走,应该比我快得多。

公众号:蓝海资料掘金营,微信deep3321