从零创建APK
适用环境:Windows 11
目标:从一台新电脑开始,完成 Flutter Android 开发环境搭建,并最终在 Android 真机上成功执行flutter run。
目录
- 1. 环境与工具说明
- 1.1 需要准备的工具
- 1.2 各工具之间的关系
- 2. 开发环境安装与配置
- 2.1 安装 VS Code 与 Flutter 扩展
- 2.2 安装 Flutter SDK 并检查 PATH
- 2.3 安装 Android Studio 与 Android SDK
- 2.4 安装 Android SDK Tools
- 2.5 接受 Android SDK License
- 2.6 使用 flutter doctor 检查环境
- 3. 创建项目与 Android 真机连接
- 3.1 创建 Flutter Empty Application
- 3.2 开启Android开发者模式
- 3.3 USB 连接与调试授权
- 3.4 使用 ADB 检查手机
- 3.5 使用 Flutter 检查设备
- 4. 第一次 flutter run 与环境验收
- 4.1 第一次运行
- 4.2 判断是否运行成功
- 4.3 调试状态与 Hot Reload
- 5. 常见问题与故障排查
- 5.1 flutter 命令无法使用
- 5.2 cmdline-tools component is missing
- 5.3 Android License 异常
- 5.4 Chrome 和 Visual Studio 红叉
- 5.5 ADB 或 Flutter 检测不到手机
- 5.6 Gradle 网络超时
- 5.7 Debug APP 体积较大
- 5.8 推荐排错顺序
1. 环境与工具说明
1.1 需要准备的工具
从零开发并生成 Android APK,建议准备:
| 工具 | 主要作用 |
|---|---|
| Windows 11 | 开发系统 |
| VS Code | 写代码、运行终端、调试 |
| Flutter SDK | Flutter 开发核心工具链 |
| Dart | Flutter 使用的编程语言 |
| Android Studio | 安装和管理 Android SDK |
| Android SDK | Android 编译、ADB、平台工具 |
| Gradle | Android 构建系统 |
| OpenJDK | Gradle 运行所需 Java 环境 |
| ADB | 电脑与 Android 手机之间的调试通信 |
| Android 真机 | 安装和运行 APK |
日常开发主要使用:
VS Code + FlutterAndroid Studio 主要承担 Android SDK 的安装与管理。
1.2 各工具之间的关系
可以把完整构建链理解为:
VS Code ↓ 编写 Flutter / Dart ↓ Flutter SDK ↓ Gradle ↓ OpenJDK ↓ Android SDK ↓ 生成 APK ↓ ADB ↓ 安装到 Android 手机简单记忆:
VS Code = 工作台 Flutter SDK = APP 开发工具箱 Android SDK = Android 官方构建工具 Gradle = 构建系统 OpenJDK = Gradle 的 Java 运行环境 ADB = 电脑和手机之间的调试通道2. 开发环境安装与配置
2.1 安装 VS Code 与 Flutter 扩展
官方地址:
- VS Code 官网与下载:https://code.visualstudio.com/
- VS Code 入门与安装说明:https://code.visualstudio.com/docs/getstarted/overview
- Flutter 官方快速安装指南(使用 VS Code):https://docs.flutter.dev/install/quick
建议优先从官方页面下载,不使用来源不明的第三方安装包。
安装 Visual Studio Code 后,进入:
Extensions搜索并安装:
FlutterFlutter 扩展通常会同时安装或依赖:
Dart最终确认 VS Code 中至少存在:
Flutter Dart两个扩展。
2.2 安装 Flutter SDK 并检查 PATH
官方地址:
- Flutter 官方安装入口:https://docs.flutter.dev/install
- Flutter 官方 VS Code 快速安装:https://docs.flutter.dev/install/quick
- Flutter SDK 手动安装指南:https://docs.flutter.dev/install/manual
本次环境使用 VS Code 的 Flutter 扩展进行 Flutter SDK 安装或引导安装。
可在 VS Code 中按:
Ctrl + Shift + P打开命令面板,搜索 Flutter 相关命令,并按照提示安装或定位 Flutter SDK。
安装后,在 Terminal 中执行:
flutter--version如果能显示 Flutter 版本信息,说明 Flutter 已可以正常调用。
继续执行:
flutter doctor检查环境。
PATH 检查
如果出现类似:
flutter : 无法将“flutter”识别为 cmdlet、函数、脚本文件或可运行程序说明 Windows 没有找到 Flutter。
需要将 Flutter SDK 的:
<Flutter SDK路径>\bin加入 Windows 的Path。
Windows 11 路径:
开始菜单 → 搜索“环境变量” → 编辑系统环境变量 → 环境变量 → Path → 编辑 → 新建加入:
<Flutter SDK路径>\bin例如:
C:\flutter\bin修改完成后关闭并重新打开 VS Code,再执行:
flutter--version如果通过 VS Code 安装后本来就可以运行flutter,不需要额外修改 PATH。
2.3 安装 Android Studio 与 Android SDK
官方地址:
- Android Studio 官方下载:https://developer.android.com/studio
- Android Studio 官方安装说明:https://developer.android.com/studio/install
安装 Android Studio。
日常写 Flutter 不一定使用 Android Studio,但建议保留它来管理:
Android SDK Android SDK Platforms SDK Tools Android Emulator打开 Android Studio 后进入:
Settings → Languages & Frameworks → Android SDK不同 Android Studio 版本的菜单位置可能略有变化,但核心入口都是:
Android SDK在SDK Platforms中至少安装一个较新的 Android SDK Platform。
本次环境中 Flutter 已成功识别 Android SDK 36。
以后重新配置时不必强制使用完全相同版本,只要当前 Flutter 与 Android 构建工具支持即可。
2.4 安装 Android SDK Tools
官方地址:
- Android SDK Command-line Tools 官方说明:https://developer.android.com/tools
- Android Studio / Command-line Tools 下载入口:https://developer.android.com/studio
sdkmanager官方说明:https://developer.android.com/tools/sdkmanager
进入:
Android SDK → SDK Tools至少确认安装:
Android SDK Build-Tools Android SDK Command-line Tools (latest) Android SDK Platform-Tools尤其注意:
Android SDK Command-line Tools (latest)这一项很容易漏装。
勾选后:
Apply → OK等待安装结束。
2.5 接受 Android SDK License
在 VS Code Terminal 中执行:
flutter doctor--android-licenses如果不断出现:
Accept? (y/N)输入:
y并回车。
直到看到:
All SDK package licenses accepted.表示 Android SDK License 已全部接受。
2.6 使用 flutter doctor 检查环境
执行:
flutter doctor如果当前目标只是 Android APK 开发,重点确认:
[√] Flutter [√] Android toolchain [√] VS CodeChrome 与完整 Visual Studio 并不是 Android APK 开发的必要条件。
环境检查通过后即可进入项目创建和真机连接。
3. 创建项目与 Android 真机连接
3.1 创建 Flutter Empty Application
在 VS Code 中创建 Flutter 项目时,模板选择:
Empty Application相比普通Application,它更加干净,不包含大量官方示例和测试代码。
Flutter 项目名建议:
全部小写 使用下划线连接3.2 开启Android开发者模式
Android 官方真机调试说明:
- Android 真机运行与 USB 调试:https://developer.android.com/studio/run/device
进入开发者选项并开启 USB 调试。
根据不同机型寻找打开方式,直到系统提示已经进入开发者模式。 然后找到: 开发者选项开启:
USB 调试3.3 USB 连接与调试授权
使用支持数据传输的 USB 数据线连接手机与电脑。
连接时建议:
手机保持解锁 屏幕保持亮起 USB 调试保持开启第一次建立 ADB 调试连接时,手机可能出现:
是否允许 USB 调试?点击:
允许如果有:
一律允许使用这台计算机进行调试建议勾选。
注意:
数据线能够充电,不代表一定能够正常进行 USB 数据传输。
3.4 使用 ADB 检查手机
官方参考:
- Android 真机与 ADB 连接说明:https://developer.android.com/studio/run/device
- Android SDK Platform Tools / 命令行工具说明:https://developer.android.com/tools
在 Terminal 中执行:
adb devices正常结果:
List of devices attached xxxxxxxx device也可以执行:
adb devices-l查看更多设备信息。
只要显示:
device说明:
Windows → ADB → 手机这条链已经正常。
3.5 使用 Flutter 检查设备
ADB 正常后执行:
flutter devices如 vivo X100 在 Flutter 中显示为:
V2359A正常会看到类似:
V2359A android-arm64 Android ...只有当 Android 手机出现在flutter devices中以后,才进入flutter run。
4. 第一次 flutter run 与环境验收
4.1 第一次运行
进入 Flutter 项目根目录,在 Terminal 执行:
flutter run正常流程:
Launching lib\main.dart on V2359A in debug mode... ↓ Running Gradle task 'assembleDebug'... ↓ 下载 Android 构建依赖 ↓ 编译 APK ↓ 安装 APK ↓ 手机自动启动 APP第一次运行通常明显比以后慢。
4.2 判断是否运行成功
成功后通常可以看到:
Built build\app\outputs\flutter-apk\app-debug.apk Installing... Syncing files to device...随后 Android 手机会自动启动 APP。
此时完整链路已经打通:
VS Code ✅ Flutter SDK ✅ Android SDK ✅ Android License ✅ Gradle ✅ OpenJDK ✅ ADB ✅ Android 真机 ✅ APK 编译 ✅ APK 安装 ✅ flutter run ✅4.3 调试状态与 Hot Reload
flutter run成功以后,终端通常保持与手机连接。
常用命令:
r Hot Reload R Hot Restart q Quit开发过程中不要关闭这个 Terminal。
如果退出后需要重新建立调试连接,再次执行:
flutter run5. 常见问题与故障排查
如果基础流程出现异常,再进入本章排查。
不建议一遇到问题就重新安装 Flutter、Android Studio 或 Android SDK。
5.1 flutter 命令无法使用
现象
flutter 不是内部或外部命令或 PowerShell 提示无法识别flutter。
原因
Windows PATH 中没有 Flutter SDK 的bin路径。
解决
将:
<Flutter SDK路径>\bin加入 WindowsPath。
然后重新打开 VS Code 和 Terminal。
验证:
flutter--version5.2 cmdline-tools component is missing
现象
flutter doctor出现:
X cmdline-tools component is missing.原因
Android SDK 存在,但没有安装 Android Command-line Tools。
解决
进入:
Android Studio → Android SDK → SDK Tools勾选:
Android SDK Command-line Tools (latest)点击:
Apply安装完成后重新执行:
flutter doctor5.3 Android License 异常
现象
Android license status unknown.解决
执行:
flutter doctor--android-licenses不断输入:
y直到:
All SDK package licenses accepted.5.4 Chrome 和 Visual Studio 红叉
Chrome
可能看到:
[X] Chrome - develop for the web它影响的是:
Flutter Web如果当前只开发 Android APK,可以忽略。
Visual Studio
可能看到:
[X] Visual Studio - develop Windows apps注意:
Visual Studio ≠ Visual Studio Code它主要用于 Windows 桌面程序开发。
只做 Android APK 时可以忽略。
5.5 ADB 或 Flutter 检测不到手机
先判断是哪一层的问题
执行:
adb devices如果 ADB 本身都看不到手机,就先不要检查 Flutter。
推荐排查:
USB 调试是否打开 ↓ 手机是否解锁 ↓ 数据线是否支持数据传输 ↓ USB 接口是否正常 ↓ Windows 是否识别手机 ↓ ADB 是否正常必要时:
adbkill-server adbstart-serveradb devices如果adb devices正常,再执行:
flutter devices5.6 Gradle 网络超时
现象
可能出现:
java.net.ConnectException: Connection timed out: connect也可能看到:
Could not GET Could not download或者flutter doctor检查:
https://maven.google.com/超时。
推荐顺序
先做:
1. 检查网络 2. 再运行 flutter run 3. 多尝试几次 4. 如果已经出现 Downloading,就继续等待不要第一时间:
重装 Flutter 重装 Android Studio 重装 Android SDK 修改一堆 Gradle 配置只有网络长期无法访问 Gradle/Maven 时,才考虑代理、镜像或手动下载。
5.7 Debug APP 体积较大
开发阶段使用:
flutter run运行的是 Debug 版本。
Debug APP 会包含:
Flutter Engine Dart VM 调试器 Hot Reload 支持 调试信息 Android Native Libraries因此手机中显示:
几十 MB 甚至约 80 MB并不异常。
正式发布时使用:
flutter build apk--release如果希望按 CPU 架构拆分:
flutter build apk--release--split-per-abiRelease APK 通常会明显小于 Debug 版本。
5.8 推荐排错顺序
Flutter 整体环境问题
flutter 命令能否运行 ↓ flutter doctor ↓ Android toolchain ↓ Android License ↓ adb devices ↓ flutter devices ↓ Gradle 构建 ↓ APK 安装手机连接问题
USB ↓ Windows ↓ ADB ↓ FlutterAndroid 构建问题
Flutter ↓ Gradle ↓ OpenJDK ↓ Android SDK ↓ Maven / 网络按层排查,比“全部重装”更容易找到真正问题。