Debian Gnu/Linux 下 Android Sdk 和 Flutter 简易安装

总结摘要
flutter

Debian 官方包仓库中有现成的 sdkmanager, 我们可以直接借用。 以下以 fish shell 为例,不适用 Bash(可自行修改)。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
sudo apt install sdkmanager default-jdk
set -gx ANDROID_HOME $HOME/Android/Sdk # Linux 通常使用这个路径

sdkmanager \
  "build-tools;36.0.0" \
  "cmdline-tools;latest" \
  "emulator" \
  "platform-tools" \
  "platforms;android-36" \
  "system-images;android-36;google_apis;x86_64"

avdmanager create avd \
  -n flutter_emu \
  -k "system-images;android-36;google_apis;x86_64" \
  -d "pixel_6"

在 ~/.config/fish/conf.d 下新建 flutter.fish ,包括以下内容:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
set -gx ANDROID_HOME $HOME/Android/Sdk # Linux 通常使用这个路径

# 添加必要路径(推荐写法)
fish_add_path $ANDROID_HOME/emulator
fish_add_path $ANDROID_HOME/platform-tools
fish_add_path $ANDROID_HOME/cmdline-tools/latest/bin

set -gx FLUTTER_STORAGE_BASE_URL "https://mirrors.cernet.edu.cn/flutter"
set -gx PUB_HOSTED_URL "https://mirrors.cernet.edu.cn/dart-pub"

# 下载并解压缩flutter sdk,并设定path
set -gx PATH "$HOME/sdk/flutter-sdk/bin" $PATH

重启 Debian, flutter doctor 查看还有什么问题并解决。

如果启动安卓模拟器时 dri3 error,需要升级 Mesa到25.2以上版本

建立 /etc/apt/sources.list.d/trixie-backports.sources, 写入如下内容

1
2
3
4
5
6
Types: deb deb-src
URIs: http://deb.debian.org/debian
Suites: forky
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Enabled: no
1
2
3
4
5
6
sudo apt update && sudo apt full-upgrade -y
sudo apt install -t trixie-backports \
      mesa-vulkan-drivers \
      libgl1-mesa-dri \
      libglx-mesa0 \
      mesa-uti