开始在 macOS 上构建 Flutter Android 应用
验证系统要求
#要安装和运行 Flutter,您的 macOS 环境必须满足以下硬件和软件要求。
硬件要求
#您的 macOS Flutter 开发环境必须满足以下最低硬件要求。
要求 | 最低 | 推荐 |
---|---|---|
CPU 内核数 | 4 | 8 |
内存(GB) | 8 | 16 |
显示分辨率(像素) | WXGA(1366 x 768) | FHD(1920 x 1080) |
可用磁盘空间(GB) | 44.0 | 70.0 |
软件要求
#要编写和编译用于 Android 的 Flutter 代码,请安装以下软件包。
操作系统
#Flutter 支持在 macOS 11(Big Sur)或更高版本上进行开发。本指南假设您的 Mac 使用 zsh
作为默认 shell。
要验证您的 shell 配置,请展开此部分
与大多数类 UNIX 操作系统一样,macOS 可以支持多个 shell,例如 bash
、zsh
和 sh
。从 2019 年 10 月发布的 macOS Catalina(macOS 10.15)开始,Zsh 或 zsh
是 macOS 的默认 shell。
检查并设置 zsh
作为默认值
#要验证
zsh
是否已设置为默认的 macOS shell,请运行 目录服务命令行实用程序。dscl . -read ~/ UserShell
该命令应打印以下内容作为其响应。
UserShell: /bin/zsh
您可以跳过其余步骤。
如果您需要安装
zsh
,请按照 此 Wiki 中的步骤操作。如果您需要将默认 shell 更改为
zsh
,请运行chsh
命令。chsh -s `which zsh`
要详细了解 macOS 和 zsh
,请查看 macOS 文档中的 将 zsh 作为 Mac 上的默认 shell。
某些 Flutter 组件需要在运行 Apple 芯片 的 Mac 上进行 Rosetta 2 翻译过程。要在 Apple 芯片上运行所有 Flutter 组件,请安装 Rosetta 2。
sudo softwareupdate --install-rosetta --agree-to-license
开发工具
#下载并安装以下软件包。
Android Studio 2023.3.1(Jellyfish)或更高版本,用于调试和编译用于 Android 的 Java 或 Kotlin 代码。Flutter 需要完整版本的 Android Studio。
Git 2.27 或更高版本,用于管理源代码。要检查您是否已安装
git
,请在终端中键入git version
。如果您需要安装git
,请键入brew install git
。
上述软件的开发人员提供对这些产品的支持。要解决安装问题,请参阅该产品的文档。
当您运行当前版本的 flutter doctor
时,它可能会列出其中一个软件包的不同版本。如果是这样,请安装它推荐的版本。
文本编辑器或集成开发环境
#您可以使用任何文本编辑器或集成开发环境 (IDE) 结合 Flutter 的命令行工具来构建应用。
使用带有 Flutter 扩展或插件的 IDE 可以提供代码完成、语法突出显示、窗口小部件编辑辅助、调试和其他功能。
流行的选项包括
- Visual Studio Code 1.77 或更高版本,以及 VS Code 的 Flutter 扩展。
- Android Studio 2023.3.1(Jellyfish)或更高版本,以及 IntelliJ 的 Flutter 插件。
- IntelliJ IDEA 2023.3 或更高版本,以及 IntelliJ 的 Flutter 插件 和 IntelliJ 的 Android 插件。
安装 Flutter SDK
#要安装 Flutter SDK,您可以使用 VS Code Flutter 扩展或自行下载并安装 Flutter 包。
使用 VS Code 安装 Flutter
#要使用这些说明安装 Flutter,请验证您是否已安装 Visual Studio Code 1.77 或更高版本以及 VS Code 的 Flutter 扩展。
提示 VS Code 安装 Flutter
#启动 VS Code。
要打开**命令面板**,请按 Command + Shift + P。
在**命令面板**中,键入
flutter
。选择**Flutter:新建项目**。
VS Code 会提示您在计算机上找到 Flutter SDK。
如果您已安装 Flutter SDK,请点击**查找 SDK**。
如果您尚未安装 Flutter SDK,请点击**下载 SDK**。
如果您尚未按照 开发工具先决条件 中的说明安装 Git,则此选项会将您发送到 Flutter 安装页面。
当系统提示**选择哪个 Flutter 模板?**时,请忽略它。按 Esc。您可以在检查开发环境设置后创建测试项目。
下载 Flutter SDK
#显示**选择 Flutter SDK 的文件夹**对话框时,选择要安装 Flutter 的位置。
VS Code 会将您置于用户配置文件中以开始。选择其他位置。
考虑
~/development/
点击**克隆 Flutter**。
下载 Flutter 期间,VS Code 会显示此弹出通知
Downloading the Flutter SDK. This may take a few minutes.
此下载需要几分钟。如果您怀疑下载已挂起,请点击**取消**,然后重新开始安装。
下载 Flutter 完成后,将显示**输出**面板。
Checking Dart SDK version... Downloading Dart SDK from the Flutter engine ... Expanding downloaded archive...
成功后,VS Code 会显示此弹出通知
Initializing the Flutter SDK. This may take a few minutes.
初始化期间,**输出**面板将显示以下内容
Building flutter tool... Running pub upgrade... Resolving dependencies... Got dependencies. Downloading Material fonts... Downloading Gradle Wrapper... Downloading package sky_engine... Downloading flutter_patched_sdk tools... Downloading flutter_patched_sdk_product tools... Downloading windows-x64 tools... Downloading windows-x64/font-subset tools...
此过程还会运行
flutter doctor -v
。在此过程中的这一点,请*忽略此输出*。Flutter Doctor 可能会显示不适用于此快速入门指南的错误。Flutter 安装成功后,VS Code 会显示此弹出通知
Do you want to add the Flutter SDK to PATH so it's accessible in external terminals?
VS Code 可能会显示 Google Analytics 通知。
如果您同意,请点击**确定**。
要在所有终端窗口中启用
flutter
- 关闭,然后重新打开所有终端窗口。
- 重新启动 VS Code。
下载然后安装 Flutter
#要安装 Flutter,请从其存档中下载 Flutter SDK 包,将包移动到您要存储的位置,然后提取 SDK。
下载以下安装包以获取 Flutter SDK 的最新稳定版本。
对于其他发布渠道和旧版本,请查看 SDK 存档。
Flutter SDK 应下载到 macOS 默认下载目录:
~/Downloads/
。创建要安装 Flutter 的文件夹。
考虑在
~/development/
中创建一个目录。将文件解压缩到要存储 Flutter SDK 的目录中。
unzip ~/Downloads/flutter_sdk_v1.0.0.zip \ -d ~/development/
完成后,Flutter SDK 应位于
~/development/flutter
目录中。
将 Flutter 添加到您的 PATH
#要在终端中运行 Flutter 命令,请将 Flutter 添加到 PATH
环境变量中。本指南假设您的 Mac 运行最新的默认 shell,即 zsh
。Zsh 使用 .zshenv
文件来存储 环境变量。
启动您喜欢的文本编辑器。
如果存在,请在文本编辑器中打开 Zsh 环境变量文件
~/.zshenv
。如果不存在,请创建~/.zshenv
。复制以下行并将其粘贴到
~/.zshenv
文件的末尾。bashexport PATH=$HOME/development/flutter/bin:$PATH
保存
~/.zshenv
文件。要应用此更改,请重新启动所有打开的终端会话。
如果您使用其他 shell,请查看 此关于设置 PATH 的教程。
配置 Android 开发环境
#在 Android Studio 中配置 Android 工具链
#要使用 Flutter 创建 Android 应用,请验证是否已安装以下 Android 组件。
- Android SDK 平台,API 35.0.1
- Android SDK 命令行工具
- Android SDK 构建工具
- Android SDK 平台工具
- Android 模拟器
如果您尚未安装这些组件,或者您不确定,请继续执行以下步骤。
否则,您可以跳到 下一部分。
启动**Android Studio**。
将显示**欢迎使用 Android Studio** 对话框。
按照**Android Studio 设置向导**进行操作。
安装以下组件
- Android SDK 平台,API 35.0.1
- Android SDK 命令行工具
- Android SDK 构建工具
- Android SDK 平台工具
- Android 模拟器
启动**Android Studio**。
转到**设置**对话框以查看**SDK 管理器**。
如果已打开项目,请转到**工具** > **SDK 管理器**。
如果显示**欢迎使用 Android Studio** 对话框,请点击**打开**按钮后面的**更多选项**图标,然后从下拉菜单中点击**SDK 管理器**。
点击**SDK 平台**。
验证是否已选中**Android API 35.0.1**。
如果**状态**列显示**有更新可用**或**未安装**
选择**Android API 35.0.1**。
点击**应用**。
显示**确认更改**对话框时,请点击**确定**。
将显示带有完成计量的**SDK 快速修复安装**对话框。
安装完成后,点击**完成**。
安装最新 SDK 后,**状态** 列可能会显示 **有更新可用**。这意味着某些其他系统映像可能尚未安装。您可以忽略此提示并继续。
点击**SDK 工具**。
验证以下 SDK 工具是否已选中
- Android SDK 命令行工具
- Android SDK 构建工具
- Android SDK 平台工具
- Android 模拟器
如果任何上述工具的**状态**列显示**有更新可用**或**未安装**
选择所需的工具。
点击**应用**。
显示**确认更改**对话框时,请点击**确定**。
将显示带有完成计量的**SDK 快速修复安装**对话框。
安装完成后,点击**完成**。
配置目标 Android 设备
#设置 Android 模拟器
#要配置您的 Flutter 应用以在 Android 模拟器中运行,请按照以下步骤创建并选择一个模拟器。
在您的开发计算机上启用虚拟机加速。
启动**Android Studio**。
转到**设置**对话框以查看**SDK 管理器**。
如果您已打开项目,请转到**工具** > **设备管理器**。
如果显示**欢迎使用 Android Studio** 对话框,请点击**打开**按钮后面的**更多选项**图标,然后从下拉菜单中点击**设备管理器**。
点击**虚拟**。
点击**创建设备**。
将显示**虚拟设备配置**对话框。
在**类别**下选择**手机**或**平板电脑**。
选择设备定义。您可以浏览或搜索设备。
点击**下一步**。
如果您的 Mac 运行在 Intel CPU 上,请点击**x86 映像**;如果您的 Mac 运行在 Apple CPU 上,请点击**ARM 映像**。
点击您要模拟的 Android 版本的一个系统映像。
如果所需的映像在**发行版名称**右侧有一个**下载**图标,请点击它。
将显示带有完成计量的**SDK 快速修复安装**对话框。
下载完成后,点击**完成**。
点击**下一步**。
**虚拟设备配置**将显示其**验证配置**步骤。
要重命名 Android 虚拟设备 (AVD),请更改**AVD 名称**框中的值。
点击**显示高级设置**并滚动到**模拟性能**。
从**图形**下拉菜单中选择**硬件 - GLES 2.0**。
这将启用硬件加速并提高渲染性能。
验证您的 AVD 配置。如果正确,请点击**完成**。
要了解有关 AVD 的更多信息,请查看管理 AVD。
在**设备管理器**对话框中,点击所需 AVD 右侧的**运行**图标。模拟器将启动并显示所选 Android 操作系统版本和设备的默认画布。
设置您的目标 Android 设备
#要配置您的 Flutter 应用以在物理 Android 设备上运行,您需要一台运行 Android API 级别 21 或更高版本的 Android 设备。
在您的设备上启用**开发者选项**和**USB 调试**,如Android 文档中所述。
[可选] 要利用无线调试,请在您的设备上启用**无线调试**,如Android 文档中所述。
将您的设备插入 macOS 计算机。如果您的设备提示您,请授权您的计算机访问您的设备。
验证 Flutter 是否识别您连接的 Android 设备。
在终端中,运行
flutter devices
默认情况下,Flutter 使用基于您的
adb
工具的 Android SDK 版本。要使用不同的 Android SDK 安装路径与 Flutter,请将ANDROID_SDK_ROOT
环境变量设置为该安装目录。
同意 Android 许可协议
#在使用 Flutter 之前以及安装所有先决条件后,请同意 Android SDK 平台的许可协议。
打开一个提升的控制台窗口。
运行以下命令以启用签名许可证。
flutter doctor --android-licenses
如果您在其他时间接受了 Android Studio 许可证,则此命令将返回
[========================================] 100% Computing updates... All SDK package licenses accepted.
您可以跳过下一步。
在同意每个许可证的条款之前,请仔细阅读每个条款。
排查许可证问题
#如何修复查找 Java 安装错误
您可能在 Android SDK 定位 Java SDK 时遇到问题。
flutter doctor --android-licenses
ERROR: JAVA_HOME is set to an invalid directory: /Applications/Android\ Studio.app/Contents/jre/Contents/Home
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.
Android sdkmanager tool was found, but failed to run
(/Users/atsansone/Library/Android/sdk/cmdline-tools/latest/bin/sdkmanager): "exited code 1".
Try re-installing or updating your Android SDK,
visit https://flutterdart.cn/to/macos-android-setup for detailed instructions.
由于JAVA_HOME
变量的设置方式,flutter doctor
命令返回此错误。当您将路径添加到JAVA_HOME
时,可以在Android
和Studio
之间的空格处添加反斜杠,或将整个路径用匹配的引号括起来。您不能同时执行两者。
在相应的 shell 资源文件中查找您的JAVA_HOME
路径。
将其从
export JAVA_HOME="/Applications/Android\ Studio.app/Contents/jre/Contents/Home"
更改为
export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/Contents/Home"
不要在Android
和Studio
之间包含反斜杠。
要加载此更新的环境变量,请重新加载您的 shell。此示例使用zsh
资源文件。
source ~/.zshrc
检查开发环境设置
#运行 Flutter doctor
#flutter doctor
命令验证 macOS 上完整 Flutter 开发环境的所有组件。
打开您的终端。
要验证所有组件的安装,请运行以下命令。
flutter doctor
由于您选择开发 Android 应用,因此您不需要所有组件。如果您按照本指南操作,则命令的结果应类似于
Running flutter doctor...
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.5, on macOS 14.4.0 23E214 darwin-arm64, locale en)
[✓] Android toolchain - develop for Android devices (Android SDK version 35.0.1)
[!] Chrome - develop for the web
[!] Xcode - develop for iOS and macOS (Xcode not installed)
[✓] Android Studio (version 2024.2)
[✓] VS Code (version 1.95)
[✓] Connected device (1 available)
[✓] Network resources
! Doctor found issues in 2 categories.
排查 Flutter doctor 问题
#当flutter doctor
命令返回错误时,可能是由于 Flutter、VS Code、Android Studio、连接的设备或网络资源导致的。
如果flutter doctor
命令返回任何这些组件的错误,请使用详细标志再次运行它。
flutter doctor -v
检查输出以获取可能需要安装的其他软件或需要执行的其他任务。
如果您更改了 Flutter SDK 或其相关组件的配置,请再次运行flutter doctor
以验证安装。
开始使用 Flutter 在 macOS 上开发 Android 应用
#**恭喜。**安装了所有先决条件和 Flutter SDK 后,您就可以开始在 macOS 上为 Android 开发 Flutter 应用了。
要继续您的学习之旅,请查阅以下指南
管理 Flutter SDK
#要了解有关管理 Flutter SDK 安装的更多信息,请查阅以下资源。
除非另有说明,否则本网站上的文档反映了 Flutter 的最新稳定版本。页面最后更新于 2024-10-28。 查看源代码 或 报告问题.