第2章:开发环境搭建

工欲善其事,必先利其器。本章将带你从零开始搭建 Kotlin/Android 开发环境,创建并运行你的第一个项目。

🔨

本章导师:鲁班

核心方法论:工欲善其事,必先利其器

「学徒啊,在我的工坊里,没有人会一进门就去刨木头。你要先认清眼前有哪些工具,挑出最趁手的那把;再把工作台收拾妥当,各种器具摆放得有条不紊;最后量准了、画好了线,才落下第一刀。写代码和做木工是一个道理——环境不对,再好的手艺也白费。今天,老夫带你把这间数字工坊从头布置好。」

2.1 选择你的 IDE

做木匠活之前,第一件事是什么?不是去砍树,而是挑一把好锯。程序员的"锯子"就是 IDE——集成开发环境。工具选对了,事半功倍;选错了,处处别扭。

Kotlin 是 JetBrains 这家"工具铺"亲手打造的语言,所以 JetBrains 家族的 IDE 对 Kotlin 的支持自然是最精良的,就像铸剑师用自己锻的剑最为顺手。你需要在两位主力"帮手"之间做出选择:

IntelliJ IDEA

IntelliJ IDEA 是 JetBrains 出品的通用 Java/Kotlin IDE,好比工坊里的万能工作台。它分为两个版本:

由于 Kotlin 本身就是 JetBrains 开发的,IntelliJ IDEA 对 Kotlin 的支持可以说是"原生级别"——代码补全、重构、调试等体验都是最流畅的。打个比方:锻造师用自己铺子出的锤子,怎么抡都顺手。

Android Studio

Android Studio 是 Google 官方推出的 Android 开发 IDE。它基于 IntelliJ IDEA Community Edition 构建,在此基础上添加了大量 Android 专属功能——就像在万能工作台上又加装了一整套专用夹具,专门为 Android 这种"材料"而设计:

Android Studio 完全免费,是进行 Android 开发的首选工具。老夫的建议:如果你的目标是造 Android 应用这门手艺,那这就是你的主工作台。

如何选择?

老夫常说,"活儿定工具,工具不定活儿"。根据你要干的活计,选对应的家什:

场景 推荐 IDE 理由
只想学习 Kotlin 语言 IntelliJ IDEA CE 轻量、启动快,专注语言本身
学习 Kotlin + Android 开发 Android Studio 内置模拟器、SDK 管理、Compose 预览等
Kotlin 后端开发(Ktor、Spring) IntelliJ IDEA 对服务端框架支持更好
Kotlin Multiplatform 两者皆可 涉及 Android 部分时用 Android Studio

本教程的选择

由于本教程最终目标是 Android 开发,后续章节将以 Android Studio 为主要开发环境。这好比老夫教你做家具,虽然锯子和刨子都能在别的台子上用,但做家具最终还得到木工台前干活。如果你目前只想练习 Kotlin 语法,可以先安装 IntelliJ IDEA 社区版,后续再切换到 Android Studio——两者的 Kotlin 编码体验几乎一致,不用担心白学。

2.2 安装 Android Studio

好,工具选定了,现在该把它请进你的工坊了。安装 Android Studio 就像组装一张好的工作台:先领材料,再按步骤搭建,最后调试校准。老夫一步步带你来。

下载

访问 Android Studio 官方下载页面:

https://developer.android.com/studio

页面会自动检测你的操作系统并提供对应的安装包。Android Studio 支持 Windows、macOS 和 Linux 三大平台。无论你的工坊是什么样的台面,都有配套的安装方案。

系统要求

装工作台之前,先量量场地够不够大。老夫把最低门槛和推荐配置都列在这里了:

项目 最低要求 推荐配置
操作系统 Windows 8 / macOS 10.14 / Linux 64位 最新版本
内存(RAM) 8 GB 16 GB 或更多
磁盘空间 8 GB(IDE + SDK + 模拟器) 20 GB 以上
屏幕分辨率 1280 x 800 1920 x 1080 或更高

注意内存

这里老夫要多唠叨几句:Android Studio 本身就比较吃内存,再加上 Gradle 构建和模拟器运行,8 GB 内存只能说"勉强够用"——就像在一张小桌子上又要摊图纸又要放工具,转个身就碰到东西。如果你的电脑内存不足 8 GB,建议使用真机调试而非模拟器,或者先用 IntelliJ IDEA + Kotlin Playground 学习语言基础。磨刀不误砍柴工,但也别拿菜刀去伐大树。

安装步骤概要

安装过程就像搭榫卯结构——按顺序来,一步都不能跳:

  1. 下载安装包:从官网下载对应平台的安装文件(Windows 为 .exe,macOS 为 .dmg,Linux 为 .tar.gz)。
  2. 运行安装程序
    • Windows:双击 .exe,按向导一路点 Next 即可。
    • macOS:打开 .dmg,将 Android Studio 拖入 Applications 文件夹。
    • Linux:解压到 /opt/ 或你喜欢的目录,运行 bin/studio.sh
  3. 首次启动向导:选择 Standard 安装类型即可,它会自动下载所需的 SDK 组件。

首次启动配置向导

第一次打开 Android Studio 时,会出现 Setup Wizard——可以理解为工作台的校准环节。关键步骤如下:

  1. Install Type:选择 Standard。它会自动安装最新的 Android SDK、Build Tools、模拟器镜像等。就像老夫给新学徒备好了标准工具箱,该有的都有了。如果你需要精细控制,可以选 Custom。
  2. UI Theme:选择你喜欢的主题(Darcula 暗色主题 / Light 亮色主题)。工坊的灯光亮一点暗一点全凭个人习惯,不影响手艺。
  3. SDK Components:确认勾选了 Android SDK、Android SDK Platform、Android Virtual Device。这三样是基本家什,缺一不可。
  4. 下载与安装:点击 Finish,等待组件下载完成。首次下载可能需要几分钟到十几分钟,取决于网络速度。耐心等待——好工具值得你等。

国内网络问题

如果你在国内下载速度很慢,可以考虑配置代理或使用国内镜像源。在 Android Studio 中,进入 File > Settings > Appearance & Behavior > System Settings > HTTP Proxy 配置代理。也可以在 gradle.properties 文件中配置 Gradle 的代理设置。巧匠不怨路远,但搬砖总得找条近路不是?

SDK Manager 配置

安装完成后,建议打开 SDK Manager 盘点一下你的"工具箱",确认各项工具齐备:

  1. 进入 Tools > SDK Manager(或在欢迎页面点击 More Actions > SDK Manager)。
  2. SDK Platforms 标签页:确保安装了最新的稳定版 Android API(如 Android 14 / API 34)。同时也建议安装一个较低版本的 API(如 API 26)用于测试兼容性。就像做家具,不但要在新木料上试效果,旧一点的料也得能用。
  3. SDK Tools 标签页:确认以下工具已安装:
    • Android SDK Build-Tools(最新版本)
    • Android SDK Command-line Tools
    • Android Emulator
    • Android SDK Platform-Tools

以上四件工具,老夫称之为"四大件"。缺了哪个,后面都会出问题。趁现在一次配齐,省得回头返工。

2.3 创建第一个 Kotlin 项目

工具到位,工作台校准完毕——万事俱备,该动手了。老夫有个规矩:每个学徒进工坊的第一天,都要亲手做一件最简单的物件。不是为了展示,而是为了验证所有工具都好使,手上的活儿能跑通全流程。今天你的"第一件作品"就是一个 Hello World 项目。

新建项目步骤

  1. 打开 Android Studio,在欢迎页面点击 New Project
  2. 在模板选择页面,选择 Phone and Tablet 分类下的 Empty Activity
    • 注意:新版 Android Studio 默认的 Empty Activity 模板已经使用 Jetpack Compose,这正是我们后续要学的 UI 框架。老夫挑这个模板不是随便选的——它是当前最主流的构建方式,从一开始就走正路。
  3. 点击 Next,进入项目配置页面。

项目配置

下面这张配置表就像图纸上的尺寸标注——每一项都有讲究,老夫逐一给你说明:

配置项 说明 建议值
Name 项目名称,显示在应用标题栏 MyFirstApp
Package name 应用的唯一标识,通常是倒序域名格式 com.example.myfirstapp
Save location 项目保存路径 默认路径即可
Language 编程语言 Kotlin(务必确认)
Minimum SDK 应用支持的最低 Android 版本 API 26 (Android 8.0)
Build configuration language 构建脚本语言 Kotlin DSL(推荐)

关于 Minimum SDK

Minimum SDK 决定了你的应用能在多老的 Android 设备上运行。选择 API 26(Android 8.0)是个不错的平衡点——它覆盖了约 95% 以上的活跃设备,同时可以使用大部分现代 API。这就像做家具选木材的尺寸标准:太大了材料浪费,太小了强度不够,找到那个恰好的分寸。你可以点击下方的 "Help me choose" 链接查看各 API 级别的市场份额。

  1. 确认配置无误后,点击 Finish。老夫提醒你:动手前多看一眼图纸,总比返工强。

等待 Gradle 同步

项目创建后,Android Studio 会自动执行 Gradle Sync——它会根据项目配置下载所需的依赖库和插件。你会在底部状态栏看到进度条。

首次同步可能需要较长时间(几分钟甚至更久),因为需要下载 Kotlin 编译器、Compose 库、AndroidX 库等大量依赖。好比老夫第一次进一家新材料铺,各种料子都要过一遍手——但只要过了这第一趟,后面就快了,因为依赖已经缓存到本地。

Gradle 同步失败?

如果 Gradle 同步失败,先别慌。老夫的经验:十次同步失败,八次是网络问题。检查你的网络连接,或尝试配置 Gradle 代理。另一个常见原因是 JDK 版本不匹配——Android Studio 自带了 JDK,一般不需要额外安装,但如果你手动设置过 JAVA_HOME 环境变量,可能会产生冲突。在 File > Settings > Build > Build Tools > Gradle 中确认使用的是 Android Studio 内置的 JDK。记住:排故障也是手艺的一部分,遇到问题不绕路、不回避,逐个排查。

2.4 项目结构解析

Gradle 同步完成后,让我们打开这张"施工图"仔细看看。一个优秀的匠人不会拿到材料就乱锯,而是先把图纸读透。在左侧的 Project 面板中切换到 Project 视图(而不是默认的 Android 视图),你会看到真实的文件系统结构——这才是你的项目在磁盘上的本来面目:

MyFirstApp/
├── app/                          // 主应用模块
│   ├── src/
│   │   ├── main/
│   │   │   ├── java/             // Kotlin/Java 源代码(历史原因叫 java)
│   │   │   │   └── com/example/myfirstapp/
│   │   │   │       └── MainActivity.kt
│   │   │   ├── res/              // 资源文件(布局、图片、字符串等)
│   │   │   │   ├── drawable/
│   │   │   │   ├── mipmap/
│   │   │   │   └── values/
│   │   │   └── AndroidManifest.xml  // 应用清单文件
│   │   └── test/                 // 单元测试代码
│   └── build.gradle.kts          // 模块级构建脚本
├── gradle/                       // Gradle Wrapper 文件
│   └── wrapper/
│       ├── gradle-wrapper.jar
│       └── gradle-wrapper.properties
├── build.gradle.kts              // 项目级构建脚本
├── settings.gradle.kts           // 项目设置(模块声明等)
├── gradle.properties             // Gradle 属性配置
└── gradlew / gradlew.bat         // Gradle Wrapper 启动脚本

这棵目录树就像一间精心规划的工坊:源代码有源代码的工位,资源文件有资源文件的架子,构建脚本相当于加工流程表。每样东西都有它该待的位置——乱放工具的匠人,做不出好活儿。

关键文件详解

MainActivity.kt — 应用的入口 Activity,你作品的"大门"。用 Compose 模板创建的项目中,它大致长这样:

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MyFirstAppTheme {
                Surface {
                    Greeting("World")
                }
            }
        }
    }
}

@Composable
fun Greeting(name: String) {
    Text(text = "Hello $name!")
}

现在不需要完全理解这段代码——就像你第一天进工坊,老夫不会让你立刻分辨十八种木料。只需知道:setContent 设置了屏幕上显示的内容,Greeting 是一个 Compose 可组合函数,它显示了 "Hello World!" 文本。后续章节,老夫会把每一行都拆开给你讲透。

AndroidManifest.xml — 应用的"身份证",也可以说是你这件作品的"出厂铭牌",上面刻着:

build.gradle.kts(模块级) — 这是整个项目最重要的配置文件之一,相当于加工流程表,控制着材料清单和制作规格:

// app/build.gradle.kts
plugins {
    alias(libs.plugins.android.application)
    alias(libs.plugins.kotlin.android)
    alias(libs.plugins.kotlin.compose)
}

android {
    namespace = "com.example.myfirstapp"
    compileSdk = 34

    defaultConfig {
        applicationId = "com.example.myfirstapp"
        minSdk = 26
        targetSdk = 34
        versionCode = 1
        versionName = "1.0"
    }
}

dependencies {
    implementation(libs.androidx.core.ktx)
    implementation(libs.androidx.activity.compose)
    implementation(platform(libs.androidx.compose.bom))
    implementation(libs.androidx.compose.ui)
    implementation(libs.androidx.compose.material3)
    // ... 更多依赖
}

这里定义了编译 SDK 版本、最低 SDK 版本、应用版本号,以及项目依赖的所有第三方库。老夫打个比方:compileSdk 是你能用的最新工具箱版本,minSdk 是你做出来的成品最低要在什么年代的"架子"上能放得稳,dependencies 则是你从外头采购来的零部件清单。

Gradle Wrapper 的作用

你可能注意到项目中有 gradlew(Mac/Linux)和 gradlew.bat(Windows)两个脚本,以及 gradle/wrapper/ 目录。这就是 Gradle Wrapper

它的作用是确保每个开发者使用完全相同版本的 Gradle 来构建项目,避免"在我的机器上可以运行"的问题。这个道理老夫最懂:如果两个匠人用的尺子刻度不一样,拼出来的家具一定合不上缝。Gradle Wrapper 就是那把"标准尺"——当你克隆一个项目时,不需要预先安装 Gradle,Wrapper 会自动下载正确版本的 Gradle,保证人人度量一致。

Android 视图 vs Project 视图

Android Studio 默认使用 Android 视图,它对目录结构做了简化和重新组织,更方便日常开发。比如它会把 java/kotlin/ 目录合并显示、将多个 res/ 目录扁平化等。初学阶段建议两种视图都熟悉——Android 视图是经过整理的"简明图纸",Project 视图是"实物原图"。两张图都能看懂,你对项目的理解才透彻。

2.5 运行你的第一个程序

材料备好了,图纸也读完了——现在到了最激动人心的一步:让你的第一件作品跑起来!老夫说句实话,一个匠人最大的成就感,就是看到自己手下的东西真正"活"了。你有两种方式运行 Android 应用:使用模拟器真机

模拟器 vs 真机

方式 优点 缺点
模拟器(Emulator) 无需 Android 手机;可模拟不同设备和 API 版本;方便截图和录屏 占用大量内存和 CPU;部分硬件功能无法模拟(NFC、蓝牙等)
真机(Physical Device) 性能好、响应快;能测试真实硬件功能;体验最接近用户 需要一台 Android 手机;需要开启开发者模式和 USB 调试

老夫的建议:先从模拟器开始。就像做木工,先在边角料上试手感,等熟练了再上正料。模拟器不需要额外设备,改了代码立刻能看效果。

用 AVD Manager 创建模拟器

AVD(Android Virtual Device)就是你的"虚拟试验台"。创建过程如下:

  1. 点击工具栏的 Device Manager 按钮(手机图标),或进入 Tools > Device Manager
  2. 点击 Create Virtual Device
  3. 选择硬件:在 Phone 分类下选择一个设备,比如 Pixel 7。点击 Next。
  4. 选择系统镜像:选择一个推荐的(Recommended)系统镜像。如果未下载,点击旁边的下载图标先下载。建议选择最新的稳定版(如带有 "API 34" 标记的镜像)。
  5. 确认配置:AVD 名称保持默认即可,点击 Finish

加速模拟器

为了让模拟器流畅运行,请确保你的电脑启用了硬件加速:Windows 上需要开启 Intel HAXM 或 Windows Hypervisor Platform(WHV),macOS 上默认使用 Hypervisor.framework(无需额外配置),Linux 上使用 KVM。如果模拟器启动后非常卡顿,很可能就是硬件加速没有启用。老夫的话:工具不利,干活受罪。这一步千万别偷懒。

点击 Run

一切就绪,开工!

  1. 在工具栏的设备下拉菜单中,选择你刚才创建的模拟器设备。
  2. 点击绿色的 Run 按钮(三角形图标),或按快捷键 Shift + F10(Windows/Linux)/ Control + R(macOS)。
  3. Android Studio 会依次执行以下步骤——这就像一条流水线,每道工序紧密衔接:
    • 编译 Kotlin 代码
    • 打包 APK
    • 启动模拟器(如果尚未启动)
    • 安装 APK 到模拟器
    • 启动应用
  4. 首次运行可能需要一两分钟。之后你会在模拟器上看到显示着 "Hello World!""Hello Android!" 的界面。

看到了吗?屏幕上那行朴素的文字,就是你的第一件作品。虽然只是一行字,但从项目创建到成功运行,背后涉及了 Kotlin 编译器、Gradle 构建系统、Android SDK 和模拟器的协同工作——就像一件看似简单的榫卯接头,背后是对每种工具、每道工序的精确掌控。老夫要恭喜你:你已经打通了从"写代码"到"跑起来"的全链路。每一个 Hello World 都是一段匠人生涯的起点。

使用真机调试

如果你想在真实手机上运行应用,也不难——好比从试验台换到正式工位。总共三步:开启开发者模式 → 打开 USB 调试 → 连接电脑。不过老夫要提醒你:不同品牌的手机,"开关"藏的位置不太一样,就像不同师傅的工坊,工具柜的布局各有讲究。

第一步:开启开发者模式

所有 Android 手机的套路是一样的:找到某个"版本号"相关的字段,连续点击 7 次,系统会提示"您已进入开发者模式"。但这个字段藏在哪里,各家不同:

手机品牌 路径 连续点击的字段
原生 Android / Pixel 设置 > 关于手机 版本号(Build number)
小米 / Redmi 设置 > 我的设备 > 全部参数与信息 MIUI 版本(或 HyperOS 版本)
华为 / 荣耀 设置 > 关于手机 版本号
OPPO / Realme 设置 > 关于本机 版本号
vivo / iQOO 设置 > 关于手机 软件版本号
三星 设置 > 关于手机 > 软件信息 编译编号(Build number)
一加 设置 > 关于本机 版本号

鲁班的经验

如果你的手机品牌不在上面的表里,也不用慌。万变不离其宗:进设置,找到"关于手机"相关的页面,看到带"版本"字样的字段就猛点 7 下。系统一定会给你反馈——"您已处于开发者模式"或者"还差 X 步进入开发者模式"。找开关这件事,耐心比运气重要。

第二步:打开 USB 调试

开启开发者模式后,你需要找到开发者选项并打开 USB 调试。注意,开发者选项的位置也因品牌而异:

手机品牌 开发者选项的位置
原生 Android / Pixel 设置 > 系统 > 开发者选项
小米 / Redmi 设置 > 更多设置 > 开发者选项
华为 / 荣耀 设置 > 系统和更新 > 开发者选项
OPPO / Realme 设置 > 其他设置 > 开发者选项
vivo / iQOO 设置 > 系统管理 > 开发者选项
三星 设置 > 开发者选项
一加 设置 > 其他设置 > 开发者选项

进入开发者选项后,找到并打开 USB 调试

小米用户必看

小米/Redmi 手机除了打开 USB 调试之外,还必须额外开启 "USB 安装"(也在开发者选项中)。如果不开这个开关,Android Studio 能识别到手机,但安装应用时会失败——这就像门锁开了,但门闩没拔,还是推不开。开启时系统会要求你插入 SIM 卡并登录小米账号,按提示操作即可。

第三步:连接电脑

  1. 用 USB 数据线将手机连接到电脑。注意要用支持数据传输的线,有些充电线只能充电不能传数据——老夫见过不少学徒在这一步卡住,换根线就好了。
  2. 手机上会弹出 "允许 USB 调试吗?" 的对话框,点击允许。建议勾选"始终允许来自这台计算机的调试",省得每次都要确认。
  3. 连接成功后,Android Studio 工具栏的设备下拉菜单中会出现你的手机型号,选中它,点击 Run 即可将应用安装到真机上运行。

无线调试(Android 11+)

如果你的手机是 Android 11 及以上版本,还可以使用无线调试,摆脱 USB 线的束缚。在开发者选项中打开"无线调试",然后在 Android Studio 的 Device Manager 中通过"Pair Devices Using Wi-Fi"进行配对。老夫虽然是老派匠人,但好用的新工具也不排斥——不用线缆确实方便,改完代码扭头看手机就行。前提是手机和电脑在同一个 Wi-Fi 网络下。

2.6 其他学习工具

老夫的工坊里不只有主工作台。老夫还有好几件小巧趁手的辅助工具——修边的、试样的、打草稿的。学 Kotlin 也一样,除了 Android Studio 这张主台之外,还有一些轻量级工具非常适合日常练手。在后续章节学习语言特性时,用这些工具可以快速验证想法,不需要每次都创建完整的 Android 项目。毕竟,试一行代码的效果,犯不着启动整条流水线。

Kotlin Playground

Kotlin Playground(play.kotlinlang.org)是 JetBrains 官方提供的在线 Kotlin 编辑器。老夫把它比作"随身携带的小工作台",它的优势在于:

来,试一把——在 Playground 中输入以下代码并运行:

fun main() {
    val languages = listOf("Java", "Kotlin", "Swift", "Dart")

    languages
        .filter { it.startsWith("K") }
        .forEach { println("I love $it!") }
}
// 输出: I love Kotlin!

不用完全理解语法,只需要感受一下 Kotlin 代码的简洁和可读性——就像老夫给你看一件成品,你不用马上知道每道工序怎么做,先感受一下"好的手艺长什么样"。这些语法细节我们在第 3 章会详细学习。

Kotlin REPL

REPL(Read-Eval-Print Loop,读取-求值-输出 循环)是一种交互式编程工具。你输入一行代码,它立即执行并显示结果。老夫觉得它最像什么呢?就像手边的一块试刨料——想试试这把刀快不快、这种纹路怎么走,随手一刨就知道了,不用专门找块好木头。

在 IntelliJ IDEA 或 Android Studio 中使用 Kotlin REPL:

  1. 打开菜单 Tools > Kotlin > Kotlin REPL
  2. 在底部弹出的窗口中输入 Kotlin 代码。
  3. Ctrl + Enter(macOS 上是 Cmd + Enter)执行。
// 在 REPL 中尝试
val x = 10
val y = 20
println("x + y = ${x + y}")
// 输出: x + y = 30

// 试试类型推断
val message = "Hello"   // 自动推断为 String
println(message::class.simpleName)
// 输出: String

REPL 的使用场景

当你学习一个新的 API 或语法特性时,先在 REPL 中快速试验比创建文件来测试要高效得多。比如想看看 String.reversed() 的效果?直接在 REPL 里输入 "Kotlin".reversed(),立刻得到结果 "niltoK"。老夫说:好匠人动手前先试样,试样的速度越快,出活儿的质量越高。

Scratch 文件

Scratch 文件(草稿文件)是 IntelliJ / Android Studio 提供的一种临时文件机制。它比 REPL 更强大——你可以写多行代码、定义函数和类,就像在正式项目文件中一样,但它不属于任何项目,不会被提交到版本控制。老夫把它比作"工坊里的草稿纸"——想到什么就画几笔,画完了也不心疼扔掉。

创建 Scratch 文件的方法:

  1. 按快捷键 Ctrl + Alt + Shift + Insert(macOS 上是 Cmd + Shift + N,然后选择 Scratch File)。
  2. 或者进入菜单 File > New > Scratch File
  3. 在弹出的对话框中选择 Kotlin

Scratch 文件的特点:

工具选择小结

老夫最后帮你理一理,什么场合用什么工具,心里要有数:

快速试验一行代码 → Kotlin REPL(试刨料)
写一段完整的测试代码 → Scratch 文件(草稿纸)
不在电脑旁 / 给别人演示 → Kotlin Playground(随身工作台)
正式项目开发 → Android Studio 项目文件(主工作台)

工具不在多,在于用得对路。该用小锤的时候别抡大锤,该上大锤的时候也别掏绣花针。

本章练习

练习 1:搭建你自己的工作台 入门

安装 Android Studio,完成首次启动配置向导,确保 SDK Manager 中的"四大件"(Build-Tools、Command-line Tools、Emulator、Platform-Tools)全部安装到位。然后截一张 SDK Manager 界面的图,确认工具齐全。

提示

打开 Tools > SDK Manager,切换到 SDK Tools 标签页,逐一检查四个工具的勾选状态。如果有未安装的,勾选后点击 Apply 进行安装。

参考答案

在 SDK Tools 标签页中,你应该能看到以下四项均显示 "Installed" 状态:

  • Android SDK Build-Tools(最新版本)
  • Android SDK Command-line Tools(latest)
  • Android Emulator
  • Android SDK Platform-Tools

如果任何一项缺失,勾选后点击 Apply,等待下载安装完成即可。鲁班说:开工之前,先把家什点齐了。

练习 2:第一件作品 入门

按照本章 2.3 节的步骤,创建一个名为 MyFirstApp 的项目,使用 Empty Activity 模板、Kotlin 语言、Kotlin DSL 构建脚本。成功创建后,使用模拟器运行它,确认在屏幕上看到 "Hello" 字样。

提示

如果 Gradle 同步一直卡住,检查你的网络连接。可以在 File > Settings > Build > Build Tools > Gradle 中确认 JDK 配置。模拟器选择 Pixel 系列设备 + 最新稳定版系统镜像即可。

参考答案

完成以下检查点即为成功:

  • 项目在 Android Studio 中成功打开,左侧 Project 面板可以看到目录结构
  • 底部状态栏显示 "Gradle sync finished"(而非报错)
  • 模拟器启动后,屏幕上显示 "Hello World!" 或 "Hello Android!"

如果你看到了那行字——恭喜,这就是你的第一件作品。鲁班说:万丈高楼平地起,第一块砖最重要。

练习 3:试试你的随身工作台 入门

打开 Kotlin Playground(play.kotlinlang.org),在编辑器中输入以下代码并运行,观察输出结果:

fun main() {
    val tools = listOf("锯子", "刨子", "凿子", "墨斗")
    println("鲁班的工具箱有 ${tools.size} 件工具:")
    tools.forEachIndexed { index, tool ->
        println("  ${index + 1}. $tool")
    }
}

然后尝试修改 tools 列表,加入你自己喜欢的"工具"名称,再次运行。

提示

listOf() 的括号内添加新的字符串即可,用逗号分隔。例如:listOf("锯子", "刨子", "凿子", "墨斗", "曲尺")

参考答案

原始代码运行后,输出应为:

鲁班的工具箱有 4 件工具:
  1. 锯子
  2. 刨子
  3. 凿子
  4. 墨斗

修改后如果你加了"曲尺",输出会变成 5 件工具,并多出一行 5. 曲尺。这个练习的目的是让你亲手感受 Kotlin 代码的即时反馈——改了就能看到结果,这种手感对于学手艺至关重要。

练习 4:熟悉你的工作台布局 进阶

在练习 2 创建的项目中,完成以下操作:

  1. 将左侧 Project 面板从默认的 Android 视图 切换到 Project 视图,找到 MainActivity.kt 的完整路径。
  2. 打开 app/build.gradle.kts 文件,找到 minSdk 的值,把它从 26 改为 24,然后点击顶部出现的 "Sync Now" 链接,观察 Gradle 重新同步。
  3. 打开 Kotlin REPL(Tools > Kotlin > Kotlin REPL),输入 "Android".reversed(),按 Ctrl + Enter(macOS 为 Cmd + Enter)执行,查看结果。
提示

切换视图:点击 Project 面板左上角的下拉菜单,选择 "Project" 即可。MainActivity.kt 的完整路径形如 app/src/main/java/com/example/myfirstapp/MainActivity.kt。修改 minSdk 后一定要同步 Gradle,否则修改不会生效。

参考答案

完成检查:

  • MainActivity.kt 的完整路径为:app/src/main/java/com/example/myfirstapp/MainActivity.kt
  • 修改 minSdk 后,Gradle 同步应成功完成(底部状态栏显示 "Gradle sync finished"),项目仍然可以正常运行
  • 在 REPL 中执行 "Android".reversed(),输出结果为 diordnA

鲁班说:熟悉工作台上每个旋钮、每个开关的位置,以后干起活来才不会手忙脚乱。今天多花十分钟摸索布局,将来能省下无数翻找的时间。

« 上一章 目录 下一章 »