Flutter运行模式
Flutter三种设计模式
1、Debug模式 调试页面开发时使用
2、Profile模式 调试性能 开发时使用
3、Release模式 部署发包时使用
Debug
Debug模式可以在真机和模拟器上同时运行,此模式会打开所有的断言,包括debugging信息、debugger aids(比如observatory)和服务扩展。优化了快速develop/run循环,但是没有优化执行速度、二进制大小和部署。
命令
flutter run
就是以这种模式运行的,通过
sky/tools/gn --android
或者
sky/tools/gn --ios
来构建应用的。
Release
Release模式只能在真机上运行,不能在模拟器上运行:会关闭所有断言和debugging信息,关闭所有debugger工具。优化了快速启动、快速执行和减小包体积。禁用所有的debugging aids和服务扩展。这个模式是为了部署给最终的用户使用。
命令
flutter run --release
就是以这种模式运行的,通过
sky/tools/gn --android --runtime-mode=release
或者
sky/tools/gn --ios --runtime-mode=release
来构建应用。
Profile
Profile模式只能在真机上运行,不能在模拟器上运行,基本和Release模式一致,除了启用了服务扩展和tracing,以及一些为了最低限度支持tracing运行的东西(比如可以连接observatory到进程)。
命令
flutter run --profile
就是以这种模式运行的。
通过
sky/tools/gn --android --runtime-mode=profile
或者
sky/tools/gn --ios --runtime-mode=profile
来构建应用。
test
headless test模式只能在桌面上运行,基本和Debug模式一致,除了是headless的而且你能在桌面运行。
命令
flutter test
就是以这种模式运行的。通过sky/tools/gn来build。