SuperAPI AI 工具集

flutter-caching

数据与分析

查看项目

更新于 10-16 08:47

技能介绍

用途:在 Flutter 应用中实现缓存、离线优先数据持久化与性能优化。插件会评估数据保留需求,选择合适缓存机制:临时数据用内存缓存;小型键值对用 shared_preferences;大型关系数据或需复杂查询用设备数据库(如 sqflite);大型二进制文件或 JSON 用文件系统缓存(path_provider);网络图片用 cached_network_image 或自定义 ImageCache;减少 Android Flutter UI 预热时间用 FlutterEngine 缓存。

主要能力:文件系统缓存(path_provider 与 dart:io);SQLite 持久化(sqflite);基于 Stream 的离线优先仓库,先返回缓存再拉取网络并更新缓存;Android FlutterEngine 预热与缓存;图片与滚动缓存优化;渲染性能校验,包括 saveLayer 触发、operator == 重写、intrinsic 布局等检查。

使用方式:插件以指令和决策树引导实现,涉及必要命令与代码结构保持原样,例如 sqflite 查询必须使用 whereArgs 防止 SQL 注入,滚动组件必须使用 ScrollCacheExtent 对象替代已弃用的 cacheExtent 与 cacheExtentStyle。Android 缓存引擎需在不再需要时显式调用 FlutterEngine.destroy()。

适用场景:需要离线优先、持久化缓存、启动加速或渲染性能优化的 Flutter 应用。

限制:不要为强制缓存而重写 Widget 的 operator ==,应使用 const 构造;不要人为增大 ImageCache.maxByteSize;Flutter Web 不支持 Dart isolate,不要为 Web 生成基于 isolate 的后台解析。具体收费、价格与平台支持等资料暂未提供。