在 Debian 上优化 Flutter 性能,通常可以从系统环境、Flutter 配置、应用代码、渲染与构建方式几个层面来做。下面给你一套比较实用的优化清单。
Flutter 在 Linux 上默认使用 GTK / X11 / Wayland:
flutter 版本 ≥ 3.10,且显卡驱动正常查看当前会话:
echo $XDG_SESSION_TYPE
sudo apt update
sudo apt install -y \
build-essential \
libgtk-3-dev \
libgl1-mesa-dev \
libgles2-mesa-dev \
xorg-dev
glxinfo | grep "OpenGL renderer"
确保不是 llvmpipe(软件渲染)
如果是虚拟机,建议:
flutter run --release
或构建:
flutter build linux --release
在 main.dart:
void main() {
// 不要写 debugPrint
runApp(MyApp());
}
移除:
debugPaintSizeEnabled = true;
const 构造函数ValueNotifier / Provider.selectconst Text('Hello');
ListView.builderitemExtentListView.builder(
itemCount: 1000,
itemBuilder: (_, i) => ItemWidget(i),
)
cacheWidth / cacheHeightImage.asset('a.png', cacheWidth: 300);
--enable-impellerFlutter 3.13+ 支持 Impeller(Linux 实验):
flutter run --release --enable-impeller
或永久开启:
export FLUTTER_ENGINE_ARGS="--enable-impeller"
setStateRepaintBoundaryRepaintBoundary(
child: HeavyWidget(),
)
Linux 默认就是 AOT(release)
flutter pub deps
移除未使用依赖
tree-shake-iconsflutter build linux --release --tree-shake-icons
flutter run --profile
打开 DevTools:
flutter pub global activate devtools
flutter devtools
htop
nvidia-smi # 如有独显
| 问题 | 解决 |
|---|---|
| 卡顿 | 使用 release 模式 |
| 启动慢 | 减少插件初始化 |
| CPU 占用高 | 检查动画 / Timer |
| 黑屏 | Wayland → X11 |
如果你愿意,可以告诉我:
我可以给你更针对性的优化方案。