从 ChromeOS 网页开始添加 Flutter 的 Android 开发工具

要将 Android 添加为 ChromeOS 的 Flutter 应用目标,请遵循此过程。

安装 Android Studio

  1. 为 Android Studio 分配至少 7.5 GB 的存储空间。考虑分配 10 GB 的存储空间以实现最佳配置。

  2. 为 Android Studio 安装以下先决条件包:libc6:i386libncurses5:i386libstdc++6:i386lib32z1libbz2-1.0:i386

     $ sudo apt-get install \
         libc6:i386 libncurses5:i386 \
         libstdc++6:i386 lib32z1 \
         libbz2-1.0:i386
    
  3. 安装 Android Studio 2023.1(Hedgehog)以调试和编译 Android 的 Java 或 Kotlin 代码。Flutter 需要 Android Studio 的完整版本。

配置 Android 开发

在 Android Studio 中配置 Android 工具链

help 帮助

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

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

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

否则,您可以跳至 下一部分

  1. 启动 Android Studio

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

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

  3. 安装以下组件

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

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

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

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

  3. 点击 SDK 平台

  4. 验证是否已选择 Android API 34.0.0

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

    1. 选择 Android API 34.0.0

    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. 单击 。

  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. 在设备上启用开发者选项USB 调试,如 Android 文档 中所述。

  2. [可选] 要利用无线调试,在设备上启用无线调试,如 Android 文档 中所述。

  3. 将设备插入 ChromeOS 电脑。如果设备提示你,请授权你的电脑访问你的设备。

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

    默认情况下,Flutter 使用 adb 工具所在的 Android SDK 版本。要使用 Flutter 中不同的 Android SDK 安装路径,请将 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://flutterdart.cn/docs/get-started/install/macos#android-setup for detailed instructions.

由于 JAVA_HOME 变量的设置方式,flutter doctor 命令返回此错误。当你添加 JAVA_HOME 的路径时,你可以在 AndroidStudio 之间的空格添加反斜杠,或用匹配的引号括起整个路径。你不能同时执行这两项操作。

在适当的 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"

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

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

source ~/.zshrc

检查你的开发设置

help 帮助

运行 Flutter doctor

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

  1. 打开一个 shell。

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

    $ flutter doctor
    

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

Running flutter doctor...
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.19.3, on , locale en)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2023.1 (Hedgehog) or later)
[✓] VS Code (version 1.86)
[✓] Connected device (1 available)
[✓] Network resources


∙ No issues found!

解决 Flutter doctor 问题

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

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

$ flutter doctor -v

检查输出以了解你可能需要安装的其他软件或要执行的进一步任务。

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

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

恭喜!现在你已经安装了所有先决条件和 Flutter SDK,你应该能够开始在 ChromeOS 上为 Android 开发 Flutter 应用。