在 Manjaro/Arch linux 上配置 Flutter 开发环境。
由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!
Linux 是 Flutter 开发的绝佳操作系统,但配置 Java、Android 和 Android 工具链可能非常困难。在这篇博文中,我将向您展示如何在不安装 Android Studio 的情况下让 Flutter 与 Android SDK 协同工作。
我将使用 Neovim 编写代码,您也可以使用 VS Code 或任何其他文本编辑器。
让我们开始搭建 Flutter 开发环境吧!
安装 Yay 包管理器
我们将安装 Arch 用户仓库中的几乎所有软件包。为此,您需要安装yay包管理器。
打开终端并运行以下命令。
pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
安装 Flutter
yay -S flutter
请使用以下命令确保您已安装 OpenJDK 8 或 10。
java -version
如果 Java 版本不是 8 或 10,则使用以下命令安装 OpenJDK 8
sudo pacman -S jre8-openjdk
并将这些代码添加到你的 .bashrc 或 .zshrc 文件中。
export JAVA_HOME='/usr/lib/jvm/java-8-openjdk'
export PATH=$JAVA_HOME/bin:$PATH
设置权限
Yay 安装Flutter在/opt/flutter一个只有 root 用户才能访问的目录中,因此我们需要设置相应的权限。请在终端中运行以下命令。
sudo groupadd flutterusers
sudo gpasswd -a $USER flutterusers
sudo chown -R :flutterusers /opt/flutter
sudo chmod -R g+w /opt/flutter/
如果遇到一些奇怪的权限被拒绝错误,请尝试以下方法。
sudo chown -R $USER /opt/flutter
Android SDK 和工具
要安装 Android SDK 和其他所需工具,请在终端中运行以下命令。
yay -S android-sdk android-sdk-platform-tools android-sdk-build-tools
yay -S android-platform
用户权限
android-sdk 安装在/opt/android-sdk某个目录中,因此我们需要设置相应的权限。
sudo groupadd android-sdk
sudo gpasswd -a $USER android-sdk
sudo setfacl -R -m g:android-sdk:rwx /opt/android-sdk
sudo setfacl -d -m g:android-sdk:rwX /opt/android-sdk
安卓模拟器
sdkmanager --list
此命令将显示可用的安卓系统镜像列表。安装您选择的安卓镜像。例如:
sdkmanager --install "system-images;android-29;default;x86"
然后创建一个安卓模拟器
avdmanager create avd -n <name> -k "system-images;android-29;default;x86"
将这些行添加到你的 .bashrc/.zshrc 文件中。
export ANDROID_SDK_ROOT='/opt/android-sdk'
export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools/
export PATH=$PATH:$ANDROID_SDK_ROOT/tools/bin/
export PATH=$PATH:$ANDROID_ROOT/emulator
export PATH=$PATH:$ANDROID_SDK_ROOT/tools/
使用此命令接受所有许可证flutter doctor --android-licenses
然后跑flutter doctor
如果运行以下命令后许可证仍然不被接受,flutter doctor --android-licences请尝试这些命令,然后flutter doctor --android-licences再次运行。
sudo chown -R $(whoami) $ANDROID_SDK_ROOT
如果许可证仍然不被接受(我遇到过这种情况),那么请尝试以下方法。
sudo flutter doctor --android-licenses
创建并运行新的 Flutter 应用
flutter create new_app
cd new_app
flutter run --debug

要在手机上运行您的应用程序,您需要启用 USB 调试模式,并使用 USB 数据线将设备连接到笔记本电脑。
