1. 准备调试环境
在Debian上调试Flutter应用前,需完成基础环境配置:
~/flutter目录,将bin路径添加到PATH环境变量(编辑~/.bashrc,添加export PATH="$PATH:~/flutter/bin",执行source ~/.bashrc)。sudo apt update && sudo apt install -y git cmake ninja-build libgl1-mesa-dev libglib2.0-dev libnss3-dev libxss1 libasound2 libxtst6 xauth xvfb libgtk-3-dev,确保编译和运行Flutter应用所需的库已就绪。2. 使用Flutter DevTools(官方推荐工具)
Flutter DevTools是一套功能全面的调试工具,支持状态检查、性能分析、网络请求监控等:
flutter pub global activate devtools(首次使用需激活),然后执行flutter pub run devtools,启动后会显示访问链接(如http://127.0.0.1:9100)。flutter run启动应用,DevTools会自动检测并连接;或在VS Code中通过“打开DevTools”按钮手动连接。3. IDE集成调试(VS Code/Android Studio)
通过IDE可以实现断点调试、热重载等便捷操作:
launch.json配置(若未自动生成):{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Flutter",
      "request": "launch",
      "type": "dart",
      "program": "${workspaceFolder}/lib/main.dart"
    }
  ]
}
Ctrl+S(VS Code)或点击“热重载”按钮,快速应用更改。4. 日志查看与错误排查
flutter logs命令实时查看运行中应用的日志输出;若应用已启动,可通过flutter attach连接到进程并查看日志。print()、debugPrint()的内容)。main.dart中使用try-catch包裹启动逻辑,避免应用因未捕获异常崩溃:Future<void> main() async {
  try {
    await initApp(); // 初始化逻辑(如数据库、网络)
    runApp(const MyApp());
  } catch (e) {
    runApp(const ErrorScreen(message: e.toString())); // 显示错误页面
  }
}
~/.flutter目录下,可通过查看该目录的日志文件获取详细错误信息。5. 性能分析与优化
flutter run --trace-skia开启Skia渲染跟踪,结合DevTools的“Timeline”标签分析帧渲染时间,识别卡顿原因(如布局耗时、绘制耗时)。flutter memory命令生成内存快照。debugShowPerformanceOverlay),实时显示帧率、GPU使用率等信息。6. 第三方调试工具(可选)
flutter pub add flutter_ume;main.dart中添加:if (kDebugMode) {
  PluginManager.instance
    ..register(WidgetInfoInspector())
    ..register(Performance())
    ..register(MemoryInfoPage());
  runApp(const UMEWidget(enable: true, child: MyApp()));
}