在你的应用中渲染动画是衡量性能时最常被提及的关注点之一。部分归功于 Flutter 的 Skia 引擎及其快速创建和销毁 Widget 的能力,Flutter 应用默认具有高性能,因此你只需避免常见陷阱即可获得卓越的性能。

一般建议

#

如果你看到卡顿(不流畅)的动画,请确保你正在使用以 profile 模式构建的应用来分析性能。默认的 Flutter 构建会在 debug 模式下创建一个应用,这不能代表发布版本的性能。欲了解更多信息,请参阅Flutter 的构建模式

几个常见陷阱

  • 每帧重建的 UI 远多于预期。要跟踪 Widget 的重建,请参阅显示性能数据
  • 直接构建一个包含大量子项的列表,而不是使用 ListView。

有关评估性能(包括常见陷阱信息)的更多信息,请参阅以下文档

移动端专属建议

#

你的移动应用是否出现明显的卡顿,但只在动画首次运行时出现?为避免这种情况,请确保你正在使用 Flutter 的默认图形渲染器,Impeller

Web 端专属建议

#

以下系列文章介绍了 Flutter Material 团队在改进 Flutter Gallery web 应用性能时所学到的经验