目录
文章干货满满且图片较多,强烈建议配合目录使用
原生Android&Flutter对比
首先让我们先简单了解一下原生Android和Flutter吧!
原生 Android
Android 是由 Google 开发的移动操作系统,而“原生 Android 开发”指的是直接使用 Java 或 Kotlin 语言,以及 Android SDK,来为这个操作系统构建应用程序。是深耕 Android 生态、追求极致性能和系统集成的选择,其市场份额和应用基础极为庞大。
Flutter
Flutter 是由 Google 开发的开源 UI 工具包,用于从单一代码库为移动(iOS, Android)、Web、桌面甚至嵌入式设备构建美观、高性能的应用程序。是追求开发效率、跨平台一致性和快速迭代的现代化解决方案,正迅速成为主流。
特性 | 原生 Android | Flutter |
---|---|---|
开发语言 | Java 或 Kotlin | Dart |
平台支持 | 仅 Android 平台 | iOS, Android, Web, 桌面(多平台) |
性能 | 最佳原生性能,直接访问硬件和系统API | 接近原生性能(通过 Skia 引擎渲染),高效 |
UI 渲染 | 使用平台原生 UI 组件 | 自身渲染引擎绘制 UI(“一切皆Widget”) |
开发效率 | 平台特定开发,迭代相对慢 | 热重载,一套代码多平台,开发效率高 |
学习曲线 | 需掌握 Android SDK 知识,平台差异需处理 | 新语言和框架,但设计理念统一,上手相对快 |
生态系统 | 成熟、庞大,资源丰富,各种库和工具 | 快速发展中,社区活跃,组件库日益完善 |
包大小 | 通常较小 | 相对较大(包含 Flutter 引擎和 Dart VM) |
适用场景 | 对极致原生体验、最新平台特性要求高的;仅需 Android 平台的应用 | 追求跨平台效率、UI 美观度、快速迭代的应用;资源有限但需多平台覆盖 |
当然两者并非完全的竞争关系,在实际项目中,企业会根据具体需求和资源情况做出选择,甚至可能采取混合开发策略。
Android Studio必备组件
在安装之前我们必须要清楚,无论是Flutter还是原生Android开发,以下组件都是必不可少的,因为它们是Android开发生态系统的核心:
组件/配置 | 原生Android开发 | Flutter开发 | 备注 |
---|---|---|---|
Android Studio | ✅ 必需 | ✅ 必需 | 开发Android应用的首选IDE |
Android SDK | ✅ 必需 | ✅ 必需 | Android平台工具和库(Android Studio初始设置时会提示下载 ) |
JDK | ✅ 必需 | ✅ 必需 | Java开发环境,用于运行Android SDK工具 |
Gradle | ✅ 必需 | ✅ 必需 | Android项目构建工具 (通常会与Android Studio一起安装或在项目第一次构建时自动下载) |
Flutter SDK | ❌ 不需要 | ✅ 必需 | Flutter框架和工具 |
Flutter Plugin | ❌ 不需要 | ✅ 必需 | Android Studio对Flutter的支持 |
Dart SDK | ❌ 不需要 | ✅ 必需 | Dart语言的编译器和运行时环境(通常作为Flutter SDK的一部分一起下载和安装) |
总结来说:
- Android Studio 安装包自带: 特定版的 JDK—— JBR。
- Android Studio 首次启动或配置时自动下载/管理: Android SDK 的核心组件,以及通过 Gradle Wrapper 自动下载的 Gradle 。
- 需要手动安装/配置: Flutter SDK,(Dart SDK 随 Flutter SDK 一起)。
- 通过 Android Studio 插件管理器安装: Flutter Plugin 和 Dart Plugin
一、Android Studio安装
1.官网下载:Android Studio 官网
2.点击next
3.修改默认路径
4.install
5.成功打开
这里意味着Android Studio无法连接到Google的服务器来获取可用的SDK组件列表,不用管,点击 Cancel
选择设置类型:为避免后续把文件下载在C盘,选择自定义
二、Android SDK 配置
1.修改SDK文件路径
可以看到这里默认下载SDK版本是Android API 35 (Android 15)
下图是当前设置的信息:
2.点击同意后,下载SDK
成功
3.配置SDK环境变量(非必要)
如果需要从命令行或其他非Android Studio环境访问SDK工具,或者遇到特定工具提示找不到SDK的问题,可以进行这一步
- 还是常规步骤:右键此电脑–属性–高级系统设置–环境变量
- 新建系统变量:输入
ANDROID_HOME
和SDK的文件路径
- 点击Path,添加以下两条
%ANDROID_HOME%\tools
%ANDROID_HOME%\platform-tools
三、JDK 配置(选做)
这一步是可以不进行的,因为对于大多数 Android 开发者而言,使用 Android Studio 自带的 JBR就完全能满足日常开发需求了,开箱即用很方便,并且兼容性和稳定性都很好。
不过为了环境的统一性,以及方法的介绍,下面会对具体步骤做展示。
因为下载的是最新版本的Android studio(默认配置的是对应JDK21的JBR 21.0.6),我这里使用较新且成熟稳定的JDK17。
1.下载 JDK
在Oracle 官网 或 AdoptOpenJDK 下载 JDK17
我下载的是这个
解压压缩包
2.配置环境变量
- 还是常规步骤:右键此电脑–属性–高级系统设置–环境变量
- 新建系统变量:输入
JAVA_HOME
和JDK的文件路径
- 点击Path,添加以下内容,并上移至顶端以避免其他环境冲突
%JAVA_HOME%\bin
3.验证是否生效
在命令提示符中输入下面内容
java -version
成功
四、Gradle 配置
1.修改Gradle user home路径(非必要,但推荐)
这个不是必须要修改的,但是Gradle用户目录会存储大量文件,不建议放在默认的C盘中,并且后期如果遇到需要更精细地控制文件存储位置的情况也会更方便管理,所以还是比较建议修改一下的。
- 新建一个文件夹用作Gradle user home路径
- 常规步骤:右键此电脑–属性–高级系统设置–环境变量
- 新建系统变量:输入
GRADLE_USER_HOME
和Gradle user homel路径
-
验证环境变量是否生效
-
关闭所有当前正在运行的命令提示符 (Command Prompt)、PowerShell 窗口、以及任何正在使用 Gradle 的集成开发环境 (IDE),如 Android Studio、IntelliJ IDEA 等。
-
打开一个新的命令提示符。
-
输入
echo %GRADLE_USER_HOME%
并按回车。
-
输出为刚才设置的路径,则表示环境变量设置成功
-
-
在软件中配置
-
点开设置
-
如下图找到Gradle(可以看到Gradle user home已经为我们修改后的路径了)
-
将默认的jbr修改为我们的JDK路径
-
2.新建项目
开篇提到过:Gradle通常会在项目第一次构建时自动下载
(下载前建议关掉防火墙或者杀毒软件(例如火绒),否则可能会卡住)
- 填写相关内容后开始创建
3.修改Gradle下载网址为国内镜像源
这样可以避免下载速度慢或失败
- 按照下图位置修改gradle-wrapper.properties中下载网址为国内镜像源
腾讯云镜像:
mirrors.cloud.tencent.com/gradle
4.修改Gradley依赖库下载源为国内镜像源
- 找到文件settings.gradle.kts
- 修改下图位置内容
// 阿里云镜像(覆盖 Maven Central、Google、JCenter 等)
maven { setUrl("https://maven.aliyun.com/repository/public/") }
maven { setUrl("https://maven.aliyun.com/repository/google/") }
maven { setUrl("https://maven.aliyun.com/repository/jcenter/") }
maven { setUrl("https://maven.aliyun.com/repository/gradle-plugin/") }
// 华为云镜像
maven { setUrl("https://repo.huaweicloud.com/repository/maven/") }
// 腾讯云镜像
maven { setUrl("https://mirrors.cloud.tencent.com/nexus/repository/maven-public/") }
// 网易镜像
maven { setUrl("https://mirrors.163.com/maven/repository/maven-public/") }
改前:
改后:
首次创建项目加载了3分多钟,比使用默认下载源又快又好
5.试验一下创建新项目的速度
图片上内容表示 :
Gradle 正在启动其后台进程(Daemon)并开始执行任务, UP-TO-DATE 说明这个任务已经执行过,并且自上次执行以来没有需要更新的地方,所以它会跳过再次执行,所以本次10秒钟就OK了
总结Gradle:
Gradle 在构建项目时优先检查本地缓存目录,如果本地缓存中存在版本匹配的 Gradle,则直接使用本地文件,否则会从 gradle-wrapper.properties 中指定的 distributionUrl 下载,为避免下载速度慢或失败,最好修改Gradle下载网址为国内镜像源
试运行一下原生Android版:
至此原生Android版Android Studio的安装和基本配置就已经完成了,下面将开始介绍配置Flutter开发环境的步骤
五、Flutter SDK安装
1.前往Flutter官网下载
- 建议下载Stable(稳定版)的,我下载的是图上的版本
- 解压压缩包
2.配置环境变量(设置国内镜像)
正如flutter官网所介绍的那样,为了加速Flutter工具的下载和运行,我们需要配置国内镜像
- 常规步骤:右键此电脑–属性–高级系统设置–环境变量
- 新建2个系统变量:
- 变量名:
PUB_HOSTED_URL
- 变量值:
https://pub.flutter-io.cn
- 变量值:
- 变量名:
FLUTTER_STORAGE_BASE_URL
- 变量值:
https://storage.flutter-io.cn
- 变量值:
- 变量名:
- 点击Path,添加Flutter SDK的
bin
目录路径
F:\Flutter\flutter_windows_3.29.3-stable\flutter\bin
-
点击“确定”保存设置
3.验证Flutter安装 -
打开命令提示符窗口
-
运行
flutter doctor
命令
-
flutter doctor
会检查Flutter环境,列出需要安装或配置的其他组件
4.配置Android SDK和工具链 -
解决
cmdline-tools component is missing
:
(说明Android SDK Command-line Tools这个核心组件没有正确安装或路径配置有问题)
1. 打开 Android Studio:Tools
->SDK Manager
。
2. 到SDK Tools
标签页。
3. 找到并勾选 “Android SDK Command-line Tools”
4. 点击Apply
或OK
开始安装
-
解决
Android license status unknown
:
(说明没有接受Android SDK的许可协议)
1. 以管理员身份运行命令提示符
2. 输入flutter doctor --android-licenses
3. 按照提示输入 y 接受所有Android SDK许可证。
-
解决
Chrome - develop for the web ......
:- 原因:找不到 Chrome 可执行文件,无法直接在 Flutter 中使用 Chrome 浏览器进行 Web 开发调试
- 前往Chrome 官网下载安装
-
解决
Visual Studio - develop Windows apps......
:-
原因:需要安装 Visual Studio,Flutter 应用在 Windows 桌面 上运行时,需要调用 Visual Studio 的 C++ 构建工具链来编译 Windows 原生代码
-
前往Visual Studio官网下载安装
-
勾选 “使用 C++ 的桌面开发” 工作负载
-
修改目录到非C盘
-
-
重新检查一下:
flutter doctor
没有问题了
六、配置flutter插件
1.打开Android Studio:File–Settings–Plugins
2.搜索 Flutter和Dart,并点击 Install
3.安装完成后,重启Android Studio生效
七、创建Flutter项目
1.File–New–New Flutter Project
在下图位置选择你的flutter路径
2.填写相关内容后开始创建
3.试运行一下Flutter版
- 出现一个问题:
Error: No Windows desktop project configured. See https://flutter.dev/to/add-desktop-support to learn about adding Windows support to a project.
- 原因:
因为还没有配置好支持Windows桌面平台,Flutter本身是跨平台的,但每个新的Flutter项目默认创建时只包含了移动端(Android/iOS)和Web的配置。如果要在Windows桌面上运行,需要手动添加对Windows平台的支持。
- 解决:
- 打开Flutter项目的命令行终端
- 运行以下命令来添加Windows桌面支持:
flutter create --platforms=windows .
注意:命令末尾的
.
非常重要,它表示在当前目录(即项目根目录)添加平台支持,而不是创建一个新的项目
重新试运行一下,成功