Flutter 开发的那些小细节

Flutter 创建应用的小注意

包名

每当创建一个新的 Flutter 应用时,一些 Flutter IDE 插件会请你输入一个类似 com.example 的包名,包名(在 iOS 里叫 Bundle ID)一般都是公司域名的反写如果你的应用打算上架商店,建议一开始的时候把这个全网唯一的包名设置好,因为应用上架之后就不能再修改了

在Vscode 上运行 Flutter App 需注意

项目命名

不要使用大写字母,否则会报错 如下Flutter 开发的那些小细节_第1张图片

模拟器

Windows 或 Linux 上你无法启动 iOS 模拟器

热重载功能:

热重载功能仅能在调试模式下运行;

仿真器和模拟器仅能在调试模式下运行;

在调试模型下,应用的性能可能会掉帧或者卡顿, profile 模式下会更接近真机性能

在 Web 平台下的调试模式意味着:

本次构建 没有 最小化资源并且整个构建 没有 优化性能。

为了简化调试,这个 Web 应用使用了 dartdevc 编译器。

Release 模式运行

在 Web 平台的 Release 模式意味着:

这次构建资源已经被压缩,并且性能得以优化。

这个 Web 应用通过 dart2js 编译器构建,以确保更优秀的性能

flutter help build 查看支持的编译方式如下
Flutter 开发的那些小细节_第2张图片

profile 模式运行

请勿 在调试模式和热重载功能开启的情况下做性能测试
flutter run --profile 启用
在 Web 平台的 Profile 模式意味着:

资源文件没有被压缩,但是整体性能已经优化。

这个 Web 应用通过 dart2js 编译器构建。

DevTool 无法连接至以性能模式运行的 Flutter Web 应用。你需要用 Chrome 的 DevTools 来为 Web 应用 生成时间线事件。

减小应用大小的方式

当构建应用的发行版本时,考虑使用 --split-debug-info 标记。该标记会显著减少代码量。
其他减少应用大小的方式:

  • 删除无用的资源
  • 尽量减少从库中引入的资源
  • 压缩 PNG 和 JPEG 文件

你可能感兴趣的:(flutter)