Flutter 创建应用的小注意
包名
每当创建一个新的 Flutter 应用时,一些 Flutter IDE 插件会请你输入一个类似 com.example 的包名,包名(在 iOS 里叫 Bundle ID)一般都是公司域名的反写。如果你的应用打算上架商店,建议一开始的时候把这个全网唯一的包名设置好,因为应用上架之后就不能再修改了。
在Vscode 上运行 Flutter App 需注意
项目命名
不要使用大写字母,否则会报错 如下
模拟器
Windows 或 Linux 上你无法启动 iOS 模拟器
热重载功能:
热重载功能仅能在调试模式下运行;
仿真器和模拟器仅能在调试模式下运行;
在调试模型下,应用的性能可能会掉帧或者卡顿, profile 模式下会更接近真机性能
在 Web 平台下的调试模式意味着:
本次构建 没有 最小化资源并且整个构建 没有 优化性能。
为了简化调试,这个 Web 应用使用了 dartdevc 编译器。
Release 模式运行
在 Web 平台的 Release 模式意味着:
这次构建资源已经被压缩,并且性能得以优化。
这个 Web 应用通过 dart2js 编译器构建,以确保更优秀的性能。
flutter help build 查看支持的编译方式如下
profile 模式运行
请勿 在调试模式和热重载功能开启的情况下做性能测试
flutter run --profile 启用
在 Web 平台的 Profile 模式意味着:
资源文件没有被压缩,但是整体性能已经优化。
这个 Web 应用通过 dart2js 编译器构建。
DevTool 无法连接至以性能模式运行的 Flutter Web 应用。你需要用 Chrome 的 DevTools 来为 Web 应用 生成时间线事件。
减小应用大小的方式
当构建应用的发行版本时,考虑使用 --split-debug-info 标记。该标记会显著减少代码量。
其他减少应用大小的方式:
- 删除无用的资源
- 尽量减少从库中引入的资源
- 压缩 PNG 和 JPEG 文件