SuperAPI AI 工具集

flutter-performance

编程与开发

查看项目

更新于 10-15 22:13

技能介绍

用途:该技能面向 Flutter 应用的性能优化,适用于诊断界面卡顿(jank)、减少不必要的 widget 重建、降低内存占用、改善渲染与长列表滚动表现。

主要能力与要点: 重建控制:使用 const widget,并通过 buildWhen / select 实现细粒度更新。 列表:大列表始终使用 ListView.builder 以复用列表项。 重任务:解析或复杂逻辑使用 compute() 或 Isolate 移出主线程。 重绘:复杂动画使用 RepaintBoundary,可用 debugRepaintRainbowEnabled 调试。 图片:使用 CachedNetworkImage 配合 memCacheWidth;SVG 使用 precachePicture;加载图片时始终设置 maxWidth/maxHeight。 Key:为列表项提供 ValueKey,并使用稳定 ID 辅助协调(reconciliation)。 资源清理:在 dispose() 中释放 controller 与 stream。 分页:网络列表默认每页 20 项。 构建纯净:build 方法内避免重活,将逻辑移至 BLoC/Application 层。

反模式:避免根级 setState(),改用 BlocBuilder 的 buildWhen 或 context.select();避免在 build() 中做排序、过滤等重业务逻辑;避免非 const 叶子节点;避免用 Column 承载大列表。

用法示例(节选):BlocBuilder<UserBloc, UserState>(buildWhen: (p, c) => p.id != c.id, builder: (context, state) => Text(state.name))。

限制:资料未提供安装命令、平台支持范围、收费方式及具体性能指标,暂未提供。