SuperAPI AI 工具集

android-compose-performance

通用与其它

查看项目

更新于 10-15 23:47

技能介绍

用途:当请求涉及 Compose 性能问题、Android 重组过多、Compose 中 LazyColumn 滚动缓慢时使用,目标是分析并改善 Compose 的重组、布局、滚动、启动与渲染性能。

主要能力:先判断目标界面属于 Compose、View 体系还是混合互操作界面;选择满足响应性、无障碍与性能需求的最低成本 UI 模式;围绕稳定状态、显式副作用和可复用设计令牌构建 UI;在示例应用中覆盖长文本、字体缩放、RTL 和窄屏等边界情况;在交付前用单元、UI 和截图友好检查进行验证。

使用方式:资料给出示例命令,如 cd examples/orbittasks-compose && ./gradlew :app:testDebugUnitTest、cd examples/orbittasks-compose && ./gradlew :app:assembleDebug,以及 python3 scripts/eval_triggers.py --skill android-compose-performance。示例做法包括为列表项设置稳定 key、用 remember 把重计算移出组合、用 Modifier.offset 的 lambda 版本避免滚动驱动的大范围重组。

适用场景:Compose 列表与滚动性能分析、重组热点排查、启动与渲染性能优化,以及需要与 android-performance-observability、android-testing-ui 交接的跨边界任务。

限制与护栏:优先保证稳定状态和可预测渲染,再做动画或抽象;默认遵守无障碍语义、对比度、焦点顺序和触控目标规范;没有明确互操作边界时不要混用 Compose 与 View 体系所有权;优先基于实测的性能工作,而非过早微优化。应避免在叶子 UI 组件中嵌入导航或业务逻辑、使用在本地化或动态文本下失效的固定尺寸、忽略语义只播报视觉变化、以及把 XML 模式直接照搬到 Compose。官方参考包括 Compose 性能、Macrobenchmark、Baseline Profiles 和 Studio Profiler 文档。