环境搭建:JDK 与 Android Studio 安装
从零搭建 Android 开发环境:JDK 17 安装、Android Studio 下载、SDK 与 AVD 模拟器配置,首跑空项目验证
学习目标
- 正确安装并配置 JDK 17,能在终端验证 java 与 javac 命令
- 下载并完成 Android Studio 初始化向导,安装必要 SDK Platform 与工具
- 使用 SDK Manager 管理多版本 SDK 与构建工具
- 使用 AVD Manager 创建一个可启动的虚拟设备并运行空项目
技术选型说明:为什么学 Java + Views
在开始之前,需要先说明本教程 Part 1-7 的技术定位。
当前 Android 开发有两条主流技术路线:
- Kotlin + Jetpack Compose:Google 自 2019 年起主推的声明式 UI 方案,是新项目的首选推荐。Android Studio 新建项目默认模板已转向 Compose,官方新 API 示例也以 Compose 为主。
- Java + Views(XML 布局):传统的命令式 UI 方案,Google 仍官方支持但已不再是新项目推荐路径。
本教程 Part 1-7 采用 Java + Views 路线,面向以下场景:
- 存量项目维护:大量企业应用、政府项目、老牌 App 仍是 Java + Views 代码库,维护这些项目需要相关技能
- 迁移基础:从 Views 迁移到 Compose 时,Activity、生命周期、Intent、Fragment 等核心概念在两种范式下通用,先学 Views 能为后续迁移打基础
- 就业市场需求:维护老项目仍是常见岗位需求
- 第三方库兼容:部分老库仍以 Java 为主,理解 Java 有助于集成与调试
如果你是新入门且无维护老项目需求,建议直接从 Part 8-10 Kotlin + Compose 开始。如果你需要维护存量代码或想系统理解 Android 基础概念,请继续本章。
说明:本教程在 Java + Views 体系内采用该架构下的最佳实践(如 MVC/MVP/MVVM 演进、Dagger 2 依赖注入、RxJava 异步、Room 数据库等),并在相关章节标注现代替代方案(Hilt、协程、Compose)的对应关系,便于后续迁移。
学习目标
在写第一行 Android 代码之前,必须先有一台“能编译、能运行、能调试”的开发机。本章面向完全没接触过 Android 的开发者,带你完成从 JDK 到模拟器的整条链路。读完本章你将能够:
- 在 Windows 上安装 JDK 17 并通过
java -version与javac -version验证; - 安装 Android Studio 并走完首次启动的 Setup Wizard,下载必要的 SDK Platform 34;
- 用 SDK Manager 管理 SDK Platform、Build Tools、Platform Tools、CMake 等组件;
- 用 AVD Manager 创建一台运行 Android 14(API 34)的虚拟设备并成功启动;
- 新建一个空项目并点击 Run,看到模拟器屏幕上出现 “Hello, World!” 文本。
安装 JDK 17
1. 为什么是 JDK 17
Android Studio 自 Giraffe(2023.1)起将内置 JDK 升级为 JDK 17,AGP 8.0 之后的 compileOptions 默认 sourceCompatibility 与 targetCompatibility 也升到了 17。即使 Android Studio 自带了一个 JBR(JetBrains Runtime),也建议在系统层另装一份 JDK 17,用于命令行构建、CI 环境以及未来 Gradle Wrapper 的执行。选择 JDK 17 而非 21 的原因:截至 AGP 8.5,对 21 的官方支持仍在过渡期,17 是稳定且长期支持的版本(LTS)。
2. 选择发行版
主流的 OpenJDK 发行版都可用于 Android 开发,差异主要在赞助方和支持周期:
| 发行版 | 供应商 | 适用场景 |
|---|---|---|
| Eclipse Temurin | Adoptium 基金会 | 通用、社区主流 |
| Microsoft Build of OpenJDK | 微软 | Windows 体验好 |
| Oracle JDK | Oracle | 商业许可需注意 |
| Amazon Corretto | AWS | 长期支持,企业友好 |
下面以 Temurin 17(Adoptium)为例,因为它的 Windows 安装包会自动写入 JAVA_HOME 并把 java 加入 PATH,省去手工配置。
3. Windows 上的安装步骤
- 打开 https://adoptium.net/temurin/releases/?version=17 ;
- 在 Operating System 选
Windows,Architecture 选x64; - 下载
.msi安装包(例如OpenJDK17U-jdk_x64_windows_hotspot_17.x.x_xx.msi); - 双击安装,安装向导里勾选 Set JAVA_HOME variable 和 Add to PATH 两项;
- 安装目录默认为
C:\Program Files\Eclipse Adoptium\jdk-17.x.x.x-hotspot\。
4. 验证安装
打开 PowerShell(按 Win + R 输入 powershell),执行:
java -version
javac -version
echo $env:JAVA_HOME
期望输出(版本号以你下载的为准):
openjdk version "17.0.x" 2024-xx-xx
OpenJDK Runtime Environment Temurin-17.0.x+x (build ...)
OpenJDK 64-Bit Server VM Temurin-17.0.x+x (build ...)
javac 17.0.x
C:\Program Files\Eclipse Adoptium\jdk-17.x.x.x-hotspot
如果 java -version 提示找不到命令,说明 PATH 没生效,可手动添加:在 PowerShell 临时设置可以这样:
$env:JAVA_HOME = "C:\Program Files\Eclipse Adoptium\jdk-17.x.x.x-hotspot"
$env:Path = "$env:JAVA_HOME\bin;$env:Path"
永久写入建议用“系统属性 → 环境变量”或
setx命令,setx设置的变量在新窗口生效,不影响当前会话。
5. 多版本共存(可选)
如果你机器上同时还装了 JDK 21 或 JDK 8,可以用脚本切换。一种轻量做法是把各版本装在统一目录下,再用一个 Switch-Jdk.ps1 脚本改写 JAVA_HOME:
# Switch-Jdk.ps1
param([string]$Version = "17")
$jdkRoot = "C:\Program Files\Eclipse Adoptium"
$target = Get-ChildItem $jdkRoot -Directory | Where-Object Name -Like "jdk-$Version*"
if (-not $target) { Write-Error "未找到 JDK $Version"; exit 1 }
$env:JAVA_HOME = $target.FullName
$env:Path = "$env:JAVA_HOME\bin;$env:Path"
java -version
下载并安装 Android Studio
1. 下载
访问 https://developer.android.com/studio ,下载 Windows 版安装包 android-studio-xxxx.x.x-windows.exe。Windows 版约 1.2GB,建议挂代理或使用国内镜像。
国内开发者可使用腾讯 Bugly 或中科大镜像加速 SDK 下载。设置方法见后文“SDK Manager 配置”小节。
2. 安装步骤
- 双击
.exe,按向导下一步; - 在 Choose Components 界面保留默认勾选 Android Studio 与 Android Virtual Device;
- 安装路径避免含中文、空格或特殊字符,例如
D:\Android\Android Studio; - 安装完成后启动 Android Studio,第一次启动会弹出 Setup Wizard;
- 在 Send usage statistics to Google 按个人偏好选择;
- Choose your development scenario 选 Standard 即可;
- Select UI Theme 按喜好选 Light 或 Darcula;
- Verify Settings 页会展示即将下载的 SDK 组件清单,确认后开始下载。
首次启动会下载约 2-3GB 的 SDK Platform、Build Tools、Emulator、Platform Tools 等组件,请保持网络稳定。
3. 解决国内下载慢的问题
如果首次下载卡住,可以手动配置代理:
- 在 Android Studio 启动页 →
Customize→All settings→Appearance & Behavior→System Settings→HTTP Proxy; - 选
Manual proxy configuration,填入代理服务器; - 也可设置 SDK 镜像:在
HTTP Proxy→Auto-detect proxy settings中填入国内镜像域名。
SDK Manager 配置
1. 打开 SDK Manager
Android Studio 顶部菜单 Tools → SDK Manager,或主界面 Customize → SDK Manager。也可以直接双击 android-sdk\tools\bin\sdkmanager.bat 用命令行操作。
2. SDK Platforms 标签
这里以 API Level 为单位管理 Android 平台。本教程统一使用 API 34(Android 14):
- 勾选
Android 14.0 (API 34)→ 展开后勾选Android SDK Platform 34、Sources for Android 34、Google APIs Intel x86 Atom_64 System Image; - 为兼容老设备调试,可再勾选
Android 12.0 (API 31)与Android 10.0 (API 29)的 System Image; - 点击 Apply 开始下载。
3. SDK Tools 标签
下面这些是必装项,默认应该已勾选:
| 工具 | 用途 |
|---|---|
| Android SDK Build Tools | 提供 aapt、d8、zipalign 等构建工具 |
| Android SDK Platform Tools | 提供 adb |
| Android Emulator | 模拟器引擎 |
| Android SDK Tools | 旧版工具集合 |
| Android SDK Command-line Tools | 命令行 sdkmanager |
| Intel HAXM | Intel CPU 模拟器加速(AMD 用 Hyper-V) |
| Google USB Driver | Windows 上调试真机用 |
自 Android Studio Giraffe 起
Android SDK Tools已被弃用,由Command-line Tools替代,老项目升级时留意。
4. 命令行使用 sdkmanager(可选)
# 列出已安装
sdkmanager --list_installed
# 安装 platform 34 与 build-tools
sdkmanager "platforms;android-34" "build-tools;34.0.0"
# 接受所有许可
sdkmanager --licenses
如果提示 sdkmanager: command not found,需要先把 cmdline-tools/latest/bin 加入 PATH:
$sdkRoot = "$env:LOCALAPPDATA\Android\Sdk"
$env:Path = "$sdkRoot\cmdline-tools\latest\bin;$sdkRoot\platform-tools;$env:Path"
5. 配置国内镜像源
在 SDK Update Sites 标签,可添加镜像 URL,例如 https://mirrors.neusoft.edu.cn/android/repository/repository.xml。注意镜像站点会变化,建议搜索“android sdk 镜像”获取最新。
创建 AVD 模拟器
1. 系统要求
- Intel CPU:需要安装 Intel HAXM,SDK Tools 中勾选即可;
- AMD CPU:需在 Windows 功能中启用
Hyper-V和Windows 虚拟机监控程序平台; - BIOS:需开启
Virtualization Technology (VT-x/AMD-V); - 内存建议 16GB 以上,模拟器至少分配 2GB。
2. 启用 Hyper-V(AMD 用户)
以管理员身份打开 PowerShell:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
执行完重启电脑。
3. 用 AVD Manager 创建虚拟设备
- Android Studio 顶部
Tools→Device Manager,或主界面More Actions→Virtual Device Manager; - 点击
Create Device; - Choose a device 选
Pixel 7(中等分辨率,便于通用调试)→ Next; - Select system image 选
R(API 34,Release Name “R”)→ 下载图标,等待下载完成 → Next; - Verify Configuration:
- AVD Name:
Pixel_7_API_34 - Startup orientation:Portrait
- Advanced Settings 里 Ram 调到 2048MB,Internal Storage 调到 4GB
- AVD Name:
- 点击 Finish。
4. 启动模拟器
在 Device Manager 列表点击 ▶ 按钮。首次启动耗时较长(约 30 秒),后续会快很多。屏幕出现 Android 桌面即成功。
5. 命令行启动
# 列出所有 AVD
emulator -list-avds
# 启动指定 AVD(-wipe-data 清空数据)
emulator -avd Pixel_7_API_34 -wipe-data
emulator.exe 位于 $sdkRoot\emulator 目录。
6. 验证 ADB 连接
adb devices
期望输出:
List of devices attached
emulator-5554 device
如果状态显示 offline 或 unauthorized,等待模拟器完全启动后重试。
首次跑空项目验证
1. 新建项目
- 启动 Android Studio →
New Project; - 选择
Empty Activity(注意不是Empty Views Activity,那个会强制 Compose;本教程用经典的 View 体系);- 实际上从 Hedgehog 起,模板被重命名,旧
Empty Activity现叫Empty Views Activity; - 本教程统一用
Empty Views Activity;
- 实际上从 Hedgehog 起,模板被重命名,旧
- 填写:
- Name:
FirstApp - Package name:
com.example.firstapp - Save location:
D:\projects\FirstApp - Language:
Java - Minimum SDK:
API 24 (Android 7.0) - Build configuration language:
Groovy DSL (build.gradle)
- Name:
- 点击 Finish,等待 Gradle 同步。
2. 等待 Gradle 同步完成
首次同步会下载大量依赖,可能耗时 5-15 分钟。底部状态栏显示 Gradle: Build finished 即成功。如果报 Could not resolve ...:
- 检查网络与代理;
- 在项目根
settings.gradle中加阿里云镜像:
pluginManagement {
repositories {
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/public' }
google()
mavenCentral()
gradlePluginPortal()
}
}
dependencyResolutionManagement {
repositories {
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/public' }
google()
mavenCentral()
}
}
3. 点击 Run
- 顶部工具栏选择运行设备
Pixel_7_API_34; - 点击绿色 ▶ 按钮;
- 等待构建 → 安装 → 启动;
- 模拟器屏幕出现空白界面,正中央显示
Hello, World!即成功。
4. 查看 Logcat
底部 Logcat 标签能输出应用日志。先输入过滤器 package:com.example.firstapp,再启动 App,能看到 ActivityTaskManager: ... com.example.firstapp ... 日志,证明进程已启动。
常见坑与最佳实践
- 安装路径含中文或空格导致 Gradle 同步失败:Android Studio 与 SDK 安装路径必须全英文,连空格也尽量避开,建议放
D:\Android\这类根目录。 SDK location not found:首次启动 Setup Wizard 跳过了 SDK 下载。打开 SDK Manager 手动安装 Platform 34 与 Build Tools,并在File → Project Structure → SDK Location中确认路径。- 模拟器黑屏 / 启动报
HAXM is not working:Intel CPU 检查 BIOS 是否开启 VT-x;AMD CPU 切换到 Hyper-V 后端,并在 SDK Tools 中取消 Intel HAXM。 - JDK 版本不一致报
Unsupported class file major version:检查java -version是 17;如果项目报“21”或“8”版本不匹配,到File → Project Structure → SDK Location → JDK改成Embedded JDK 17。 - 首次 Gradle 同步卡
Downloading https://services.gradle.org/...:手动下载对应版本 Gradle 离线包放到~\.gradle\wrapper\dists\gradle-x.x-all\<hash>\目录,再次同步会跳过下载。 SDK license not accepted报错:执行sdkmanager --licenses输入y接受全部许可。- 模拟器很卡:开启
Cold Boot启动更快;长期调试建议买一台真机,开启开发者选项 + USB 调试。 - 公司网络代理拦截 HTTPS 证书:Android Studio 的 HTTP Proxy 配置中勾上
No proxy hosts,必要时把*.android.com、*.google.com加入例外。
章节小结
- JDK 17 是 Android Studio Giraffe 之后的标准运行时,建议系统层独立安装 Temurin 17 并验证
java -version; - Android Studio 安装路径避免中文与空格,首次启动 Setup Wizard 会下载约 2GB 的 SDK 组件;
- SDK Manager 管
SDK Platforms(按 API Level)与SDK Tools(Build Tools、Platform Tools、Emulator、HAXM 等); - AVD Manager 创建虚拟设备时按 CPU 类型选择加速方案(Intel HAXM / AMD Hyper-V);
- 完成空项目验证 = 同步成功 + 模拟器启动 + 屏幕出现
Hello, World!三步全过。
下一章预告
第 2 章我们将动手做一个真正的 Hello World:新建一个 Empty Views Activity 项目、运行到模拟器、初探目录结构,修改 TextView 文案并构建出第一个可安装的 APK。