跳至主要内容

开始在 Linux 上构建 Flutter Android 应用

验证系统要求

#

要安装并运行 Flutter,您的 Linux 环境必须满足以下硬件和软件要求。

硬件要求

#

您的 Linux Flutter 开发环境必须满足以下最低硬件要求。

要求最低推荐
CPU 内核48
内存(GB)816
显示分辨率(像素)WXGA(1366 x 768)FHD(1920 x 1080)
可用磁盘空间(GB)11.060.0

软件要求

#

要为 Android 编写和编译 Flutter 代码,您必须拥有以下版本的 Linux 和列出的软件包。

操作系统

#

Flutter 支持 Debian Linux 11 或更高版本以及 Ubuntu Linux 20.04 LTS 或更高版本。

开发工具

#

在 Linux 上开发 Flutter

  1. 安装以下软件包:curlgitunzipxz-utilsziplibglu1-mesa

    sudo apt-get update -y && sudo apt-get upgrade -y;
    sudo apt-get install -y curl git unzip xz-utils zip libglu1-mesa
  2. 开发 Android 应用

    1. 安装 Android Studio 的以下先决条件软件包

      sudo apt-get install libc6:amd64 libstdc++6:amd64 lib32z1 libbz2-1.0:amd64
    2. 安装 Android Studio 2023.3.1(Jellyfish)或更高版本以调试和编译 Android 的 Java 或 Kotlin 代码。Flutter 需要完整版本的 Android Studio。

当您运行当前版本的 flutter doctor 时,它可能会列出其中一个软件包的不同版本。如果是这样,请安装它推荐的版本。

上述软件的开发者为这些产品提供支持。要解决安装问题,请参阅该产品的文档。

配置文本编辑器或 IDE

#

您可以使用任何文本编辑器或集成开发环境 (IDE) 结合 Flutter 的命令行工具来构建应用。

使用带有 Flutter 扩展或插件的 IDE 可以提供代码补全、语法高亮、窗口小部件编辑辅助、调试和其他功能。

常用的选项包括

安装 Flutter SDK

#

要安装 Flutter SDK,您可以使用 VS Code Flutter 扩展或自行下载并安装 Flutter 包。

使用 VS Code 安装 Flutter

#

要使用这些说明安装 Flutter,请验证您是否已安装 Visual Studio Code 1.77 或更高版本以及 VS Code 的 Flutter 扩展

提示 VS Code 安装 Flutter

#
  1. 启动 VS Code。

  2. 要打开**命令面板**,请按Control + Shift + P

  3. 在**命令面板**中,键入flutter

  4. 选择**Flutter:新建项目**。

  5. VS Code 会提示您在计算机上找到 Flutter SDK。

    1. 如果您已安装 Flutter SDK,请单击**定位 SDK**。

    2. 如果您尚未安装 Flutter SDK,请单击**下载 SDK**。

      如果您尚未按照开发工具先决条件中的说明安装 Git,此选项会将您发送到 Flutter 安装页面。

  6. 当系统提示**选择哪个 Flutter 模板?**时,请忽略它。按Esc。您可以在检查开发设置后创建测试项目。

下载 Flutter SDK

#
  1. 当显示**选择 Flutter SDK 的文件夹**对话框时,选择要安装 Flutter 的位置。

    VS Code 会将您置于您的用户配置文件中以开始。选择其他位置。

    考虑使用~/development/

  2. 单击**克隆 Flutter**。

    下载 Flutter 时,VS Code 会显示此弹出通知

    Downloading the Flutter SDK. This may take a few minutes.

    此下载需要几分钟。如果您怀疑下载已挂起,请单击**取消**,然后重新开始安装。

  3. 完成后,**输出**面板会显示。

    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?
  4. VS Code 可能会显示 Google Analytics 通知。

    如果您同意,请单击**确定**。

  5. 要在所有终端窗口中启用flutter

    1. 关闭,然后重新打开所有终端窗口。
    2. 重新启动 VS Code。

下载然后安装 Flutter

#

要安装 Flutter,请从其存档下载 Flutter SDK 包,将该包移动到您要存储它的位置,然后解压缩 SDK。

  1. 下载以下安装包以获取 Flutter SDK 的最新稳定版本。

    (加载中...)

    对于其他发布渠道和旧版本,请查看SDK 存档

    Flutter SDK 应下载到 Linux 默认下载目录:~/Downloads/

  2. 创建一个可以安装 Flutter 的文件夹。

    考虑在~/development/中创建一个目录。

  3. 将文件解压缩到您要存储 Flutter SDK 的目录中。

    tar -xf ~/Downloads/flutter_sdk_v1.0.0.zip -C ~/development/

    完成后,Flutter SDK 应位于~/development/flutter目录中。

将 Flutter 添加到您的PATH

#

要在 shell 中运行 Flutter 命令,请将 Flutter 添加到PATH环境变量。

  1. 检查打开新控制台窗口时启动哪个 shell。这将是您的默认 shell

    echo $SHELL

    这与另一个告诉您当前控制台中运行哪个 shell 的命令不同。

    echo $0
  2. 要将 Flutter 添加到您的PATH,请展开默认 shell 的条目,然后选择命令。

    显示bash命令
    echo 'export PATH="~/development/flutter/bin:$PATH"' >> ~/.bash_profile
    显示zsh命令
    echo 'export PATH="~/development/flutter/bin:$PATH"' >> ~/.zshenv
    显示fish命令
    fish_add_path -g -p ~/development/flutter/bin
    显示csh命令
    echo 'setenv PATH "~/development/flutter/bin:$PATH"' >> ~/.cshrc
    显示tcsh命令
    echo 'setenv PATH "~/development/flutter/bin:$PATH"' >> ~/.tcshrc
    显示ksh命令
    echo 'export PATH="~/development/flutter/bin:$PATH"' >> ~/.profile
    显示sh命令
    echo 'export PATH="~/development/flutter/bin:$PATH"' >> ~/.profile
  3. 要应用此更改,请重新启动所有打开的终端会话。

配置 Android 开发

#

在 Android Studio 中配置 Android 工具链

#

help 帮助

要使用 Flutter 创建 Android 应用,请验证以下 Android 组件是否已安装。

  • Android SDK 平台,API 35.0.1
  • Android SDK 命令行工具
  • Android SDK 构建工具
  • Android SDK 平台工具
  • Android 模拟器

如果您尚未安装这些组件,或者您不知道,请继续执行以下步骤。

否则,您可以跳到下一节

  1. 启动**Android Studio**。

    将显示**欢迎使用 Android Studio**对话框。

  2. 按照**Android Studio 设置向导**。

  3. 安装以下组件

    • Android SDK 平台,API 35.0.1
    • Android SDK 命令行工具
    • Android SDK 构建工具
    • Android SDK 平台工具
    • Android 模拟器
  1. 启动**Android Studio**。

  2. 转到**设置**对话框以查看**SDK 管理器**。

    1. 如果您已打开项目,请转到**工具**>**SDK 管理器**。

    2. 如果显示**欢迎使用 Android Studio**对话框,请单击**打开**按钮后面的**更多选项**图标,然后从下拉菜单中单击**SDK 管理器**。

  3. 单击**SDK 平台**。

  4. 验证是否已选择**Android API 35.0.1**。

    如果**状态**列显示**有更新可用**或**未安装**

    1. 选择**Android API 35.0.1**。

    2. 单击**应用**。

    3. 当显示**确认更改**对话框时,请单击**确定**。

      将显示带有完成计量的**SDK 快速修复安装**对话框。

    4. 安装完成后,请单击**完成**。

      安装最新 SDK 后,**状态**列可能会显示**有更新可用**。这意味着某些其他系统映像可能未安装。您可以忽略此问题并继续。

  5. 单击**SDK 工具**。

  6. 验证是否已选择以下 SDK 工具

    • Android SDK 命令行工具
    • Android SDK 构建工具
    • Android SDK 平台工具
    • Android 模拟器
  7. 如果上述任何工具的**状态**列显示**有更新可用**或**未安装**

    1. 选择所需的工具。

    2. 单击**应用**。

    3. 当显示**确认更改**对话框时,请单击**确定**。

      将显示带有完成计量的**SDK 快速修复安装**对话框。

    4. 安装完成后,请单击**完成**。

配置目标 Android 设备

#

设置 Android 模拟器

#

help 帮助

要配置您的 Flutter 应用以在 Android 模拟器中运行,请按照以下步骤创建并选择模拟器。

  1. 在您的开发计算机上启用VM 加速

  2. 启动**Android Studio**。

  3. 转到**设置**对话框以查看**SDK 管理器**。

    1. 如果您已打开项目,请转到**工具**>**设备管理器**。

    2. 如果显示**欢迎使用 Android Studio**对话框,请单击**打开**按钮后面的**更多选项**图标,然后从下拉菜单中单击**设备管理器**。

  4. 单击**虚拟**。

  5. 单击**创建设备**。

    将显示**虚拟设备配置**对话框。

  6. 在**类别**下选择**手机**或**平板电脑**。

  7. 选择设备定义。您可以浏览或搜索设备。

  8. 单击**下一步**。

  9. 单击**x86 映像**。

  10. 单击要模拟的 Android 版本的一个系统映像。

    1. 如果所需的映像在**发行版名称**右侧有一个**下载**图标,请单击它。

      将显示带有完成计量的**SDK 快速修复安装**对话框。

    2. 下载完成后,请单击**完成**。

  11. 单击**下一步**。

    **虚拟设备配置**显示其**验证配置**步骤。

  12. 要重命名 Android 虚拟设备 (AVD),请更改**AVD 名称**框中的值。

  13. 单击**显示高级设置**并滚动到**模拟性能**。

  14. 从**图形**下拉菜单中,选择**硬件 - GLES 2.0**。

    这将启用硬件加速并提高渲染性能。

  15. 验证您的 AVD 配置。如果正确,请单击**完成**。

    要详细了解 AVD,请查看管理 AVD

  16. 在**设备管理器**对话框中,单击所需 AVD 右侧的**运行**图标。模拟器将启动并显示所选 Android 操作系统版本和设备的默认画布。

设置目标 Android 设备

#

help 帮助

要配置您的 Flutter 应用以在物理 Android 设备上运行,您需要运行 Android API 级别 21 或更高版本的 Android 设备。

  1. 按照Android 文档中的说明,在您的设备上启用**开发者选项**和**USB 调试**。

  2. [可选] 若要利用无线调试,请按照Android 文档中的说明,在您的设备上启用**无线调试**。

  3. 将您的设备插入 Linux 计算机。如果您的设备提示您,请授权您的计算机访问您的设备。

  4. 验证 Flutter 是否识别您连接的 Android 设备。

    默认情况下,Flutter 使用基于您的 adb 工具的 Android SDK 版本。若要使用其他 Android SDK 安装路径与 Flutter,请将 ANDROID_SDK_ROOT 环境变量设置为该安装目录。

同意 Android 许可协议

#

help 帮助

在使用 Flutter 之前以及安装所有先决条件后,请同意 Android SDK 平台的许可证。

  1. 打开一个提升权限的控制台窗口。

  2. 运行以下命令以启用签名许可证。

    flutter doctor --android-licenses

    如果您在其他时间接受了 Android Studio 许可证,则此命令将返回

    [========================================] 100% Computing updates...
    All SDK package licenses accepted.

    您可以跳过下一步。

  3. 在同意每个许可证的条款之前,请仔细阅读每个条款。

排查许可证问题

#
如何修复查找 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 路径。

将其从

bash
export JAVA_HOME="/Applications/Android\ Studio.app/Contents/jre/Contents/Home"

更改为

bash
export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/Contents/Home"

不要在“Android”和“Studio”之间包含反斜杠。

要加载此更新的环境变量,请重新加载您的 shell。此示例使用 zsh 资源文件。

source ~/.zshrc

检查您的开发设置

#

help 帮助

运行 Flutter doctor

#

flutter doctor 命令验证 Linux 上完整 Flutter 开发环境的所有组件。

  1. 打开一个 shell。

  2. 要验证所有组件的安装,请运行以下命令。

    flutter doctor

由于您选择开发 Android 应用,因此您不需要所有组件。如果您按照本指南操作,则命令的结果应类似于

Running flutter doctor...
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.5, on Ubuntu 20.04 (LTS), locale en)
[✓] Android toolchain - develop for Android devices (Android SDK version 35.0.1)
[!] Chrome - develop for the web
[✓] Android Studio (version 2024.2)
[!] Linux toolchain - develop for Linux desktop
[✓] 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 以验证安装。

开始在 Linux 上使用 Flutter 开发 Android 应用

#

恭喜!安装了所有先决条件和 Flutter SDK 后,您就可以开始在 Linux 上为 Android 开发 Flutter 应用了。

要继续您的学习之旅,请查阅以下指南

管理您的 Flutter SDK

#

要了解有关管理 Flutter SDK 安装的更多信息,请查阅以下资源。