Add Android as a target platform for Flutter from Web on Linux start
To add Android as a Flutter app target for Linux, follow this procedure.
Install Android Studio
#-
Allocate a minimum of 7.5 GB of storage for Android Studio. Consider allocating 10 GB of storage for an optimal configuration.
-
Install the following prerequisite packages for Android Studio:
sudo apt-get install libc6:amd64 libstdc++6:amd64 lib32z1 libbz2-1.0:amd64
-
Install Android Studio 2023.3.1 (Jellyfish) or later to debug and compile Java or Kotlin code for Android. Flutter requires the full version of Android Studio.
配置 Android 开发
#在 Android Studio 中配置 Android toolchain
#To create Android apps with Flutter, verify that the following Android components have been installed.
- Android SDK Platform, API 35.0.1
- Android SDK Command-line Tools
- Android SDK Build-Tools
- Android SDK Platform-Tools
- Android Emulator
If you haven't installed these, or you don't know, continue with the following procedure.
Otherwise, you can skip to the next section.
-
启动 Android Studio。
显示 Welcome to Android Studio 的对话框。
-
按照 Android Studio Setup Wizard 操作。
-
安装以下组件:
- Android SDK Platform, API 35.0.1
- Android SDK Command-line Tools
- Android SDK Build-Tools
- Android SDK Platform-Tools
- Android Emulator
-
启动 Android Studio。
-
打开 Settings 对话框,查看 SDK Manager。
-
如果你已经打开了一个项目,请打开 Tools > SDK Manager。
-
如果显示 Welcome to Android Studio 的对话框,请单击 Open 按钮后面的 More Options 图标,然后从下拉菜单中单击 SDK Manager。
-
-
单击 SDK Platforms。
-
检查 Android API 35.0.1 是否已经选中。
如果 Status 栏显示 Update available 或 Not installed:
-
选择 Android API 35.0.1
-
单击 Apply。
-
当显示 Confirm Change 对话框时,单击 OK。
显示 SDK Quickfix Installation 完成进度的对话框。
-
安装完成后,单击 Finish。
安装最新的 SDK 后, Status 栏可能会显示 Update available。这意味着某些额外的系统镜像可能尚未安装。你可以忽略它然后继续。
-
-
单击 SDK Tools。
-
检查以下 SDK 工具是否已经选择:
- Android SDK Command-line Tools
- Android SDK Build-Tools
- Android SDK Platform-Tools
- Android Emulator
-
如果上述任何工具的 Status 栏显示 Update available 或 Not installed:
-
选择所需的工具。
-
单击 Apply。
-
当显示 Confirm Change 的对话框时,单击 OK。
显示 SDK Quickfix Installation 完成进度的对话框。
-
安装完成后,单击 Finish。
-
配置目标 Android 设备
#配置安卓模拟器
#要配置 Flutter 应用在 Android 模拟器中运行,请按照以下步骤创建并选择模拟器:
-
在你的开发电脑上启用 VM acceleration。
-
启动 Android Studio。
-
打开 Settings 对话框,查看 SDK Manager。
-
如果你已经打开了一个项目,请打开 Tools > Device Manager。
-
如果显示 Welcome to Android Studio 的对话框,请单击 Open 按钮后面的 More Options 图标,然后在下拉菜单中单击 Device Manager。
-
-
单击 Virtual。
-
单击 Create Device。
显示 Virtual Device Configuration 的对话框。
-
在 Category 下选择 Phone 或 Tablet。
-
选择设备,你可以浏览或搜索设备。
-
单击 Next。
-
单击 x86 Images。
-
单击需要模拟的 Android 版本系统镜像。
-
如果所需镜像的 Release Name 右侧有一个 Download 图标,请单击该图标。
显示 SDK Quickfix Installation 完成进度的对话框
-
下载完成后,单击 Finish。
-
-
单击 Next。
Virtual Device Configuration 会显示它的 Verify Configuation 步骤。
-
如果要重命名 Android 虚拟设备 (AVD),请更改 AVD Name 框中的值。
-
单击 Show Advanced Settings 并滚动至 Emulated Performance。
-
从 Graphics 下拉菜单中,选择 Hardware - GLES 2.0。
这样就会开启 硬件加速 (hardware acceleration) 并提高渲染性能。
-
检查你的 AVD 配置。如果已经完备,请单击 Finish。
想要了解更多有关 AVD 的信息,请查阅 Managing AVDs。
-
在 Device Manager 对话框中,单击所需 AVD 右侧的 Run 图标。模拟器启动并显示所选 Android 操作系统的版本和设备默认的画布。
配置目标 Android 设备
#你需要一台运行 Android API level 21 或更高版本的安卓设备,来配置 Flutter 应用在真机 Android 设备上运行。
-
按照 Android 文档 中的说明,在设备上启用 开发者选项 和 USB 调试。
-
[可选] 如果要利用无线调试,请按照 Android 文档 中的说明在设备上启用 无线调试。
-
将设备插入你的 Linux 电脑。如果设备发出提示,请授权电脑访问你的设备。
-
检查 Flutter 是否能识别连接的 Android 设备。
默认情况下,Flutter 使用
adb
工具所在的 Android SDK 版本。如果要在 Flutter 中使用不同的 Android SDK 安装路径,请设置环境变量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://flutter.dev/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
指令将检查 Linux 完整的
Flutter 开发环境的所有组件。
-
Open 一个 shell.
打开一个 shell。
-
要检查所有组件的安装情况,请运行以下指令。
flutter doctor
由于你选择为 Android 进行开发,因此不需要 所有 组件。如果你遵循本指南,指令结果应该类似于:
Running flutter doctor...
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.3, on Ubuntu 20.04 (LTS), locale en)
[✓] VS Code (version 1.93)
[✓] Connected device (1 available)
[✓] Network resources
! Doctor found issues in categories.
解决 Flutter doctor 的问题
#当 flutter doctor
指令返回错误时,可能是 Flutter、VS Code、Android Studio、连接的设备或者网络资源出错。
如果 flutter doctor
指令返回这些组件中的任何一个错误,请使用 verbose 标志再次运行。
flutter doctor -v
查看输出结果,了解可能需要安装的其他软件或者需要执行的其他任务。
如果你更改了 Flutter SDK 或其他相关组件的配置,请 再次运行 flutter doctor
来检查安装。
开始使用 Flutter 开发 Android on Linux 应用
#恭喜你。 在安装完成所有必要条件和 Flutter SDK 后,你就可以开始开发适用于 Android on Linux 的 Flutter 应用了。
如果你要继续学习之旅,请参考以下指南:
除非另有说明,本文档之所提及适用于 Flutter 的最新稳定版本,本页面最后更新时间: 2024-10-18。 查看文档源码 或者 为本页面内容提出建议。