从 macOS 上的 Web 端开始,将 Android 添加为 Flutter 的目标平台
要将 Android 添加为 macOS 上 Flutter 应用的目标平台,请按照以下步骤操作。
安装 Android Studio
#- 为 Android Studio 分配至少 7.5 GB 的存储空间。建议分配 10 GB 的存储空间以获得最佳配置。
- 安装 Android Studio 2023.3.1 (Jellyfish) 或更高版本以调试和编译 Android 的 Java 或 Kotlin 代码。Flutter 需要完整版本的 Android Studio。
配置 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 模拟器中运行,请按照以下步骤创建并选择模拟器。
在您的开发计算机上启用 VM 加速。
启动 **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 OS 版本和设备的默认画布。
设置目标 Android 设备
#要配置 Flutter 应用以在物理 Android 设备上运行,您需要一台运行 Android API 级别 21 或更高版本的 Android 设备。
在您的设备上启用 **开发者选项** 和 **USB 调试**,如 Android 文档 中所述。
[可选] 要利用无线调试,请在您的设备上启用 **无线调试**,如 Android 文档 中所述。
将您的设备插入 macOS 计算机。如果您的设备提示您,请授权您的计算机访问您的设备。
验证 Flutter 是否识别您连接的 Android 设备。
默认情况下,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://fluttercn.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 1 categories.
解决 Flutter doctor 问题
#当 flutter doctor
命令返回错误时,可能是 Flutter、VS Code、Android Studio、连接的设备或网络资源出现问题。
如果 flutter doctor
命令返回任何这些组件的错误,请使用详细标志再次运行它。
flutter doctor -v
检查输出以获取可能需要安装的其他软件或需要执行的其他任务。
如果您更改 Flutter SDK 或其相关组件的配置,请再次运行 flutter doctor
以验证安装。
在 macOS 上开始使用 Flutter 开发 Android 应用
#**恭喜。**安装了所有先决条件和 Flutter SDK 后,您可以开始在 macOS 上开发用于 Android 的 Flutter 应用。
要继续您的学习之旅,请查阅以下指南
除非另有说明,否则本网站上的文档反映了 Flutter 的最新稳定版本。页面最后更新于 2024-04-22。 查看源代码 或 报告问题。