Skip to main content

从 Linux 桌面开始将 Android 添加为 Flutter 的目标平台

要将 Android 添加为 Linux 上 Flutter 应用的目标平台,请按照以下步骤操作。

安装 Android Studio

#
  1. 为 Android Studio 分配至少 7.5 GB 的存储空间。建议分配 10 GB 存储空间以获得最佳配置。

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

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

配置 Android 开发环境

#

在 Android Studio 中配置 Android 工具链

#

help 帮助

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

  • Android SDK 平台,API 35.0.1
  • Android SDK 命令行工具
  • Android SDK Build-Tools
  • Android SDK 平台工具
  • Android 模拟器

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

否则,您可以跳到下一节

  1. 启动 Android Studio

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

  2. 按照 Android Studio 设置向导 进行操作。

  3. 安装以下组件:

    • Android SDK 平台,API 35.0.1
    • Android SDK 命令行工具
    • Android SDK Build-Tools
    • 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 Build-Tools
    • Android SDK 平台工具
    • Android 模拟器
  7. 如果前面任何工具的“状态”列显示 可更新未安装

    1. 选择所需的工具。

    2. 单击 应用

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

      将显示带有完成进度条的 SDK 快速修复安装 对话框。

    4. 安装完成后,单击 完成

配置目标 Android 设备

#

设置 Android 模拟器

#

help 帮助

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

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

  2. 启动 Android Studio

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

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

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

  4. 单击 虚拟

  5. 单击 创建设备

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

  6. 类别 下选择 手机平板电脑

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

  8. 单击 下一步

  9. 单击 x86 镜像

  10. 为您想要模拟的 Android 版本单击一个系统镜像。

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

    将显示带有完成进度条的 SDK 快速修复安装 对话框。

  2. 下载完成后,单击 完成

  3. 单击 下一步

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

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

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

  3. 图形 下拉菜单中选择 硬件 - GLES 2.0

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

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

要了解有关 AVD 的更多信息,请查看 管理 AVD

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

设置您的目标 Android 设备

#

help 帮助

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

  1. 在您的设备上启用 开发者选项USB 调试,如Android 文档 中所述。

  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://flutter.dev/to/macos-android-setup for detailed instructions.

flutter doctor 命令返回此错误是因为 JAVA_HOME 变量的设置方式。当您将路径添加到 JAVA_HOME 时,可以在 AndroidStudio 之间的空格处添加反斜杠,或者将整个路径括在匹配的引号中。您不能同时执行 两者

在您相应的 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"

不要在 AndroidStudio 之间包含反斜杠。

要加载此更新的环境变量,请重新加载您的 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.27.0, 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 1 categories.

疑难解答 Flutter doctor 问题

#

flutter doctor 命令返回错误时,可能是 Flutter、VS Code、、连接的设备或网络资源的问题。

如果 flutter doctor 命令针对任何这些组件返回错误,请使用详细标志再次运行它。

flutter doctor -v

检查输出以查看您可能需要安装的其他软件或需要执行的其他任务。

如果您更改了 Flutter SDK 或其相关组件的配置,请 再次 运行 flutter doctor 以验证安装。

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

#

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

要继续您的学习之旅,请参考以下指南: