c9bdff9063
docs: 添加模拟器启动与 adb logcat 命令
2026-06-01 16:41:36 +08:00
1930bbcb7f
feat: 添加 Perfetto trace 分析脚本并更新开发文档
2026-05-27 18:10:53 +08:00
281abcf66b
perf: 添加性能追踪标记并改进基线配置文件生成器
2026-05-27 16:06:05 +08:00
4eadc479eb
feat: 添加 testTag 基础设施,扩展 Baseline Profile 覆盖路径
...
为 CalendarPager、BottomCard、FAB、工具页、日期检查器等关键 UI 元素添加 testTag,
启用 testTagsAsResourceId 支持 UI Automator 通过 resource-id 定位。
BaselineProfileGenerator 使用 testTag 选择器重写,覆盖工具页、日期检查器、
DatePicker 等更多导航路径。清理 DEVELOPMENT.md 移除已过时的性能瓶颈描述。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 10:03:16 +08:00
meyou
6fac313fdf
perf: 延迟 YearGridView 文本测量到第二帧,补充性能分析文档
...
YearGridView 首帧 168ms 中约 24ms 来自 remember 同步文本测量。
将 dayLayouts/titleLayouts/weekdayLayouts 改为 produceState,
首帧 Canvas 渲染为空(sharedElement 结构不变),第二帧填充内容。
DEVELOPMENT.md 补充已知性能瓶颈分析和 Baseline Profile 覆盖建议。
2026-05-25 23:19:58 +08:00
baedf878b4
perf: 动画性能优化 + 性能追踪工具
...
- CalendarMonthPage: 提取 WeekRow 子 Composable,graphicsLayer → offset + alpha
- DayCell: updateTransition → 独立 animateFloatAsState/animateColorAsState,
共享 MutableInteractionSource 减少重组
- CalendarMonthView/WeekPager: graphicsLayer → offset + alpha,共享 interactionSource
- DEVELOPMENT.md: 补充性能追踪使用说明
- scripts/profile.sh: 新增 Perfetto trace 一键抓取脚本
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-22 10:29:58 +08:00
bf28008d17
refactor: Wave 1 — 构建清理、测试修复、文档修正、a11y 改进
...
- build: 清理版本目录死依赖(appcompat、core、material3)
- build: 精简 ProGuard keep 规则,仅保留热点路径和第三方库
- refactor: 重命名 PredictiveBackHandler → AppPredictiveBackHandler
- test: formatLunarDate 精确断言 + 闰月测试
- test: 统一测试命名风格(下划线),Unconfined → StandardTestDispatcher
- docs: 修正文档为纯 Android + Jetpack Compose 描述
- feat(a11y): 添加可访问性语义标注(WeekdayHeader heading、BottomCard 拖拽描述)
- feat: 为 DayCell、MonthHeader、WeekdayHeader、BottomCard 添加 @Preview
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 17:51:12 +08:00
98f3b71c4f
perf: 升级 Macrobenchmark 至 1.4.1,适配新 API 并重新生成 Baseline Profile
...
- benchmarkMacro 1.3.4 → 1.4.1
- BaselineProfileGenerator: 使用 Direction 枚举替代坐标 swipe;
用 executeShellCommand 绕过 startActivityAndWait(模拟器 software renderer
不支持 gfxinfo framestats,会导致 amStartAndWait 超时)
- updateBaselineProfile task: 适配 1.4+ 的 startup-prof.txt 文件名格式,
使用 layout.buildDirectory 预先计算路径(configuration cache 兼容)
- 重新生成 baseline-prof.txt(全量 AOT 覆盖)
- benchmark build type 设为 isDebuggable=true(配合模拟器运行)
- 将 Baseline Profile 使用文档从 README 迁移至 DEVELOPMENT.md
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 11:37:37 +08:00
e0b7700306
docs: 添加 Perfetto 性能排查文档;refactor: 缓存 animatable value
...
- DEVELOPMENT.md 新增 Perfetto / Systrace trace 分析指南
- CalendarViewModel.onDrag/onExpandDrag 中缓存 _collapseAnimatable.value
到局部变量,避免在 coroutineScope.launch 闭包中重复读取
- .gitignore 添加 .claude/ 目录
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 00:44:26 +08:00
98e91c273e
Rewrite README as project overview and add development guide
...
Replace the default KMP template README with a concise project description
in Chinese, and add DEVELOPMENT.md with setup, build, test, and convention
instructions.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-14 18:01:03 +08:00